问题如上题, 我XP系统下    下载了俄文补丁    可以在“.txt”文件中输入 俄文  但我跑我的程序之后,无法在编辑框控件中输入俄文? 是不是需要设置CFont? VCEdit  俄文

解决方案 »

  1.   

    仅供参考
    CreateFont
    The CreateFont function creates a logical font that has specific characteristics. The logical font can subsequently be selected as the font for any device. HFONT CreateFont(
      int nHeight,             // logical height of font
      int nWidth,              // logical average character width
      int nEscapement,         // angle of escapement
      int nOrientation,        // base-line orientation angle
      int fnWeight,            // font weight
      DWORD fdwItalic,         // italic attribute flag
      DWORD fdwUnderline,      // underline attribute flag
      DWORD fdwStrikeOut,      // strikeout attribute flag
      DWORD fdwCharSet,        // character set identifier
      DWORD fdwOutputPrecision,  // output precision
      DWORD fdwClipPrecision,  // clipping precision
      DWORD fdwQuality,        // output quality
      DWORD fdwPitchAndFamily,  // pitch and family
      LPCTSTR lpszFace         // pointer to typeface name string
    );
     
    Parameters
    nHeight 
    Specifies the height, in logical units, of the font's character cell or character. The character height value (also known as the em height) is the character cell height value minus the internal-leading value. The font mapper interprets the value specified in nHeight in the following manner: Value Meaning 
    > 0 The font mapper transforms this value into device units and matches it against the cell height of the available fonts. 
    0 The font mapper uses a default height value when it searches for a match. 
    < 0 The font mapper transforms this value into device units and matches its absolute value against the character height of the available fonts. 
    For all height comparisons, the font mapper looks for the largest font that does not exceed the requested size. This mapping occurs when the font is used for the first time. For the MM_TEXT mapping mode, you can use the following formula to specify a height for a font with a specified point size: 
    nHeight = -MulDiv(PointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72);
     
    nWidth 
    Specifies the average width, in logical units, of characters in the requested font. If this value is zero, the font mapper chooses a "closest match" value. The "closest match" value is determined by comparing the absolute values of the difference between the current device's aspect ratio and the digitized aspect ratio of available fonts. 
    nEscapement 
    Specifies the angle, in tenths of degrees, between the escapement vector and the x-axis of the device. The escapement vector is parallel to the base line of a row of text. 
    Windows NT: When the graphics mode is set to GM_ADVANCED, you can specify the escapement angle of the string independently of the orientation angle of the string's characters. When the graphics mode is set to GM_COMPATIBLE, nEscapement specifies both the escapement and orientation. You should set nEscapement and nOrientation to the same value. Windows 95: The nEscapement parameter specifies both the escapement and orientation. You should set nEscapement and nOrientation to the same value. nOrientation 
    Specifies the angle, in tenths of degrees, between each character's base line and the x-axis of the device. 
    fnWeight 
    Specifies the weight of the font in the range 0 through 1000. For example, 400 is normal and 700 is bold. If this value is zero, a default weight is used. 
    The following values are defined for convenience: Value Weight 
    FW_DONTCARE 0 
    FW_THIN 100 
    FW_EXTRALIGHT 200 
    FW_ULTRALIGHT 200 
    FW_LIGHT 300 
    FW_NORMAL 400 
    FW_REGULAR 400 
    FW_MEDIUM 500 
    FW_SEMIBOLD 600 
    FW_DEMIBOLD 600 
    FW_BOLD 700 
    FW_EXTRABOLD 800 
    FW_ULTRABOLD 800 
    FW_HEAVY 900 
    FW_BLACK 900 fdwItalic 
    Specifies an italic font if set to TRUE. 
    fdwUnderline 
    Specifies an underlined font if set to TRUE. 
    fdwStrikeOut 
    Specifies a strikeout font if set to TRUE. 
    fdwCharSet 
    Specifies the character set. The following values are predefined: 
    ANSI_CHARSET
    BALTIC_CHARSET
    CHINESEBIG5_CHARSET
    DEFAULT_CHARSET
    EASTEUROPE_CHARSET
    GB2312_CHARSET
    GREEK_CHARSET
    HANGUL_CHARSET
    MAC_CHARSET
    OEM_CHARSET
    RUSSIAN_CHARSET
    SHIFTJIS_CHARSET
    SYMBOL_CHARSET
    TURKISH_CHARSET Korean Windows: 
    JOHAB_CHARSET 
    Middle-Eastern Windows: 
    HEBREW_CHARSET
    ARABIC_CHARSET 
    Thai Windows: 
    THAI_CHARSET 
    The OEM_CHARSET value specifies a character set that is operating-system dependent. You can use the DEFAULT_CHARSET value to allow the name and size of a font to fully describe the logical font. If the specified font name does not exist, a font from any character set can be substituted for the specified font, so you should use DEFAULT_CHARSET sparingly to avoid unexpected results. Fonts with other character sets may exist in the operating system. If an application uses a font with an unknown character set, it should not attempt to translate or interpret strings that are rendered with that font. This parameter is important in the font mapping process. To ensure consistent results, specify a specific character set. If you specify a typeface name in the lpszFace parameter, make sure that the fdwCharSet value matches the character set of the typeface specified in lpszFace.
     ……