FreeType-2.1.10 API Reference
Window FNT Files
Synopsis
#FT_WinFNT_ID_XXXFT_WinFNT_ID_XXX #FT_WinFNT_HeaderRecFT_WinFNT_HeaderRec #FT_Get_WinFNT_HeaderFT_Get_WinFNT_Header This section contains the declaration of Windows FNT specific functions.
FT_WinFNT_ID_XXX 
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1252     0
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_DEFAULT    1
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_SYMBOL     2
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_MAC       77
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP932    128
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP949    129
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1361   130
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP936    134
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP950    136
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1253   161
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1254   162
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1258   163
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1255   177
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1256   178
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1257   186
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1251   204
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP874    222
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_CP1250   238
#define 
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXXFT_WinFNT_ID_OEM      255
A list of valid values for the `charset' byte in ft2-winfnt_fonts.html#FT_WinFNT_HeaderRecFT_WinFNT_HeaderRec . Exact mapping tables for the various cpXXXX encodings (except for cp1361) can be found at ftp://ftp.unicode.org in the MAPPINGS/VENDORS/MICSFT/WINDOWS subdirectory. cp1361 is roughly a superset of MAPPINGS/OBSOLETE/EASTASIA/KSC/JOHAB.TXT.
values FT_WinFNT_ID_DEFAULT This is used for font enumeration and font creation as a `don't care' value. Valid font files don't contain this value. When querying for information about the character set of the font that is currently selected into a specified device context, this return value (of the related Windows API) simply denotes failure.
FT_WinFNT_ID_SYMBOL There is no known mapping table available.
FT_WinFNT_ID_MAC Mac Roman encoding.
FT_WinFNT_ID_OEM From Michael Pöttgen <michael@poettgen.de>: The `Windows Font Mapping' article says that FT_WinFNT_ID_OEM is used for the charset of vector fonts, like `modern.fon', `roman.fon', and `script.fon' on Windows.
The `CreateFont' documentation says: The FT_WinFNT_ID_OEM value specifies a character set that is operating-system dependent.
The `IFIMETRICS' documentation from the `Windows Driver Development Kit' says: This font supports an OEM-specific character set. The OEM character set is system dependent.
In general OEM, as opposed to ANSI (i.e., cp1252), denotes the second default codepage that most international versions of Windows have. It is one of the OEM codepages from
http://www.microsoft.com/globaldev/reference/cphome.mspx,
and is used for the `DOS boxes', to support legacy applications. A German Windows version for example usually uses ANSI codepage 1252 and OEM codepage 850.
FT_WinFNT_ID_CP874 A superset of Thai TIS 620 and ISO 8859-11.
FT_WinFNT_ID_CP932 A superset of Japanese Shift-JIS (with minor deviations).
FT_WinFNT_ID_CP936 A superset of simplified Chinese GB 2312-1980 (with different ordering and minor deviations).
FT_WinFNT_ID_CP949 A superset of Korean Hangul KS C 5601-1987 (with different ordering and minor deviations).
FT_WinFNT_ID_CP950 A superset of traditional Chinese Big 5 ETen (with different ordering and minor deviations).
FT_WinFNT_ID_CP1250 A superset of East European ISO 8859-2 (with slightly different ordering).
FT_WinFNT_ID_CP1251 A superset of Russian ISO 8859-5 (with different ordering).
FT_WinFNT_ID_CP1252 ANSI encoding. A superset of ISO 8859-1.
FT_WinFNT_ID_CP1253 A superset of Greek ISO 8859-7 (with minor modifications).
FT_WinFNT_ID_CP1254 A superset of Turkish ISO 8859-9.
FT_WinFNT_ID_CP1255 A superset of Hebrew ISO 8859-8 (with some modifications).
FT_WinFNT_ID_CP1256 A superset of Arabic ISO 8859-6 (with different ordering).
FT_WinFNT_ID_CP1257 A superset of Baltic ISO 8859-13 (with some deviations).
FT_WinFNT_ID_CP1258 For Vietnamese. This encoding doesn't cover all necessary characters.
FT_WinFNT_ID_CP1361 Korean (Johab).
FT_WinFNT_HeaderRec 
  
typedef struct  FT_WinFNT_HeaderRec_
  {
    
ft2-basic_types.html#FT_UShortFT_UShort   version;
    
ft2-basic_types.html#FT_ULongFT_ULong    file_size;
    
ft2-basic_types.html#FT_ByteFT_Byte     copyright[60];
    
ft2-basic_types.html#FT_UShortFT_UShort   file_type;
    
ft2-basic_types.html#FT_UShortFT_UShort   nominal_point_size;
    
ft2-basic_types.html#FT_UShortFT_UShort   vertical_resolution;
    
ft2-basic_types.html#FT_UShortFT_UShort   horizontal_resolution;
    
ft2-basic_types.html#FT_UShortFT_UShort   ascent;
    
ft2-basic_types.html#FT_UShortFT_UShort   internal_leading;
    
ft2-basic_types.html#FT_UShortFT_UShort   external_leading;
    
ft2-basic_types.html#FT_ByteFT_Byte     italic;
    
ft2-basic_types.html#FT_ByteFT_Byte     underline;
    
ft2-basic_types.html#FT_ByteFT_Byte     strike_out;
    
ft2-basic_types.html#FT_UShortFT_UShort   weight;
    
ft2-basic_types.html#FT_ByteFT_Byte     charset;
    
ft2-basic_types.html#FT_UShortFT_UShort   pixel_width;
    
ft2-basic_types.html#FT_UShortFT_UShort   pixel_height;
    
ft2-basic_types.html#FT_ByteFT_Byte     pitch_and_family;
    
ft2-basic_types.html#FT_UShortFT_UShort   avg_width;
    
ft2-basic_types.html#FT_UShortFT_UShort   max_width;
    
ft2-basic_types.html#FT_ByteFT_Byte     first_char;
    
ft2-basic_types.html#FT_ByteFT_Byte     last_char;
    
ft2-basic_types.html#FT_ByteFT_Byte     default_char;
    
ft2-basic_types.html#FT_ByteFT_Byte     break_char;
    
ft2-basic_types.html#FT_UShortFT_UShort   bytes_per_row;
    
ft2-basic_types.html#FT_ULongFT_ULong    device_offset;
    
ft2-basic_types.html#FT_ULongFT_ULong    face_name_offset;
    
ft2-basic_types.html#FT_ULongFT_ULong    bits_pointer;
    
ft2-basic_types.html#FT_ULongFT_ULong    bits_offset;
    
ft2-basic_types.html#FT_ByteFT_Byte     reserved;
    
ft2-basic_types.html#FT_ULongFT_ULong    flags;
    
ft2-basic_types.html#FT_UShortFT_UShort   A_space;
    
ft2-basic_types.html#FT_UShortFT_UShort   B_space;
    
ft2-basic_types.html#FT_UShortFT_UShort   C_space;
    
ft2-basic_types.html#FT_UShortFT_UShort   color_table_offset;
    
ft2-basic_types.html#FT_ULongFT_ULong    reserved1[4];
  } 
FT_WinFNT_HeaderRec, *FT_WinFNT_Header;
Windows FNT Header info.
FT_Get_WinFNT_Header 
  FT_EXPORT( 
ft2-basic_types.html#FT_ErrorFT_Error  )
  
FT_Get_WinFNT_Header( ft2-base_interface.html#FT_FaceFT_Face                face,
                        
ft2-winfnt_fonts.html#FT_WinFNT_HeaderRecFT_WinFNT_HeaderRec   *aheader );
Retrieve a Windows FNT font info header.
input face A handle to the input face.
output aheader The WinFNT header.
return FreeType error code. 0 means success.
note This function only works with Windows FNT faces, returning an error otherwise.
