FreeType-2.1.10 API Reference
Window FNT Files
Synopsis
#FT_WinFNT_ID_XXX
FT_WinFNT_ID_XXX
#FT_WinFNT_HeaderRec
FT_WinFNT_HeaderRec
#FT_Get_WinFNT_Header
FT_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_XXX
FT_WinFNT_ID_CP1252
0
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_DEFAULT
1
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_SYMBOL
2
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_MAC
77
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP932
128
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP949
129
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1361
130
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP936
134
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP950
136
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1253
161
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1254
162
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1258
163
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1255
177
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1256
178
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1257
186
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1251
204
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP874
222
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_CP1250
238
#define
ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX
FT_WinFNT_ID_OEM
255
A list of valid values for the `charset' byte in
ft2-winfnt_fonts.html#FT_WinFNT_HeaderRec
FT_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_UShort
FT_UShort
version;
ft2-basic_types.html#FT_ULong
FT_ULong
file_size;
ft2-basic_types.html#FT_Byte
FT_Byte
copyright[60];
ft2-basic_types.html#FT_UShort
FT_UShort
file_type;
ft2-basic_types.html#FT_UShort
FT_UShort
nominal_point_size;
ft2-basic_types.html#FT_UShort
FT_UShort
vertical_resolution;
ft2-basic_types.html#FT_UShort
FT_UShort
horizontal_resolution;
ft2-basic_types.html#FT_UShort
FT_UShort
ascent;
ft2-basic_types.html#FT_UShort
FT_UShort
internal_leading
;
ft2-basic_types.html#FT_UShort
FT_UShort
external_leading;
ft2-basic_types.html#FT_Byte
FT_Byte
italic;
ft2-basic_types.html#FT_Byte
FT_Byte
underline;
ft2-basic_types.html#FT_Byte
FT_Byte
strike_out;
ft2-basic_types.html#FT_UShort
FT_UShort
weight;
ft2-basic_types.html#FT_Byte
FT_Byte
charset
;
ft2-basic_types.html#FT_UShort
FT_UShort
pixel_width;
ft2-basic_types.html#FT_UShort
FT_UShort
pixel_height;
ft2-basic_types.html#FT_Byte
FT_Byte
pitch_and_family;
ft2-basic_types.html#FT_UShort
FT_UShort
avg_width;
ft2-basic_types.html#FT_UShort
FT_UShort
max_width;
ft2-basic_types.html#FT_Byte
FT_Byte
first_char;
ft2-basic_types.html#FT_Byte
FT_Byte
last_char;
ft2-basic_types.html#FT_Byte
FT_Byte
default_char;
ft2-basic_types.html#FT_Byte
FT_Byte
break_char;
ft2-basic_types.html#FT_UShort
FT_UShort
bytes_per_row;
ft2-basic_types.html#FT_ULong
FT_ULong
device_offset;
ft2-basic_types.html#FT_ULong
FT_ULong
face_name_offset;
ft2-basic_types.html#FT_ULong
FT_ULong
bits_pointer;
ft2-basic_types.html#FT_ULong
FT_ULong
bits_offset;
ft2-basic_types.html#FT_Byte
FT_Byte
reserved;
ft2-basic_types.html#FT_ULong
FT_ULong
flags;
ft2-basic_types.html#FT_UShort
FT_UShort
A_space;
ft2-basic_types.html#FT_UShort
FT_UShort
B_space;
ft2-basic_types.html#FT_UShort
FT_UShort
C_space;
ft2-basic_types.html#FT_UShort
FT_UShort
color_table_offset;
ft2-basic_types.html#FT_ULong
FT_ULong
reserved1[4];
}
FT_WinFNT_HeaderRec
, *FT_WinFNT_Header;
Windows FNT Header info.
FT_Get_WinFNT_Header
FT_EXPORT(
ft2-basic_types.html#FT_Error
FT_Error
)
FT_Get_WinFNT_Header
(
ft2-base_interface.html#FT_Face
FT_Face
face,
ft2-winfnt_fonts.html#FT_WinFNT_HeaderRec
FT_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.
