1 /***************************************************************************/
5 /* FreeType font driver for Windows FNT/FON files */
7 /* Copyright 1996-2001, 2002, 2003, 2004, 2007 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
9 /* Copyright 2007 Dmitry Timoshkov for Codeweavers */
11 /* This file is part of the FreeType project, and may only be used, */
12 /* modified, and distributed under the terms of the FreeType project */
13 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
14 /* this file you indicate that you have read the license and */
15 /* understand and accept it fully. */
17 /***************************************************************************/
25 #include FT_WINFONTS_H
26 #include FT_INTERNAL_DRIVER_H
31 #ifdef FT_CONFIG_OPTION_PIC
32 #error "this module does not support PIC yet"
35 typedef struct WinMZ_HeaderRec_
44 typedef struct WinNE_HeaderRec_
48 FT_UShort resource_tab_offset
;
49 FT_UShort rname_tab_offset
;
54 typedef struct WinPE32_HeaderRec_
58 FT_UShort number_of_sections
;
60 FT_UShort size_of_optional_header
;
64 FT_ULong rsrc_virtual_address
;
71 typedef struct WinPE32_SectionRec_
75 FT_ULong virtual_address
;
76 FT_ULong size_of_raw_data
;
77 FT_ULong pointer_to_raw_data
;
83 typedef struct WinPE_RsrcDirRec_
85 FT_ULong characteristics
;
86 FT_ULong time_date_stamp
;
87 FT_UShort major_version
;
88 FT_UShort minor_version
;
89 FT_UShort number_of_named_entries
;
90 FT_UShort number_of_id_entries
;
95 typedef struct WinPE_RsrcDirEntryRec_
100 } WinPE_RsrcDirEntryRec
;
103 typedef struct WinPE_RsrcDataEntryRec_
105 FT_ULong offset_to_data
;
110 } WinPE_RsrcDataEntryRec
;
113 typedef struct WinNameInfoRec_
125 typedef struct WinResourceInfoRec_
130 } WinResourceInfoRec
;
133 #define WINFNT_MZ_MAGIC 0x5A4D
134 #define WINFNT_NE_MAGIC 0x454E
135 #define WINFNT_PE_MAGIC 0x4550
138 typedef struct FNT_FontRec_
142 FT_WinFNT_HeaderRec header
;
146 FT_String
* family_name
;
148 } FNT_FontRec
, *FNT_Font
;
151 typedef struct FNT_FaceRec_
156 FT_CharMap charmap_handle
;
157 FT_CharMapRec charmap
; /* a single charmap per face */
159 } FNT_FaceRec
, *FNT_Face
;
162 FT_EXPORT_VAR( const FT_Driver_ClassRec
) winfnt_driver_class
;
168 #endif /* __WINFNT_H__ */