[WIN32SS] Rewrite GetFontFamilyInfoForSubstitutes to use the subsitute list loaded...
[reactos.git] / reactos / win32ss / gdi / ntgdi / font.h
1 #pragma once
2
3
4 typedef struct _FONT_ENTRY
5 {
6 LIST_ENTRY ListEntry;
7 FONTGDI *Font;
8 UNICODE_STRING FaceName;
9 BYTE NotEnum;
10 } FONT_ENTRY, *PFONT_ENTRY;
11
12 typedef struct _FONT_ENTRY_MEM
13 {
14 LIST_ENTRY ListEntry;
15 FONT_ENTRY *Entry;
16 } FONT_ENTRY_MEM, *PFONT_ENTRY_MEM;
17
18 typedef struct _FONT_ENTRY_COLL_MEM
19 {
20 LIST_ENTRY ListEntry;
21 UINT Handle;
22 FONT_ENTRY_MEM *Entry;
23 } FONT_ENTRY_COLL_MEM, *PFONT_ENTRY_COLL_MEM;
24
25 typedef struct _FONT_CACHE_ENTRY
26 {
27 LIST_ENTRY ListEntry;
28 int GlyphIndex;
29 FT_Face Face;
30 FT_BitmapGlyph BitmapGlyph;
31 int Height;
32 MATRIX mxWorldToDevice;
33 } FONT_CACHE_ENTRY, *PFONT_CACHE_ENTRY;
34
35
36 /*
37 * FONTSUBST_... --- constants for font substitutes
38 */
39 #define FONTSUBST_FROM 0
40 #define FONTSUBST_TO 1
41 #define FONTSUBST_FROM_AND_TO 2
42
43 /*
44 * FONTSUBST_ENTRY --- font substitute entry
45 */
46 typedef struct FONTSUBST_ENTRY
47 {
48 LIST_ENTRY ListEntry;
49 UNICODE_STRING FontNames[FONTSUBST_FROM_AND_TO];
50 BYTE CharSets[FONTSUBST_FROM_AND_TO];
51 } FONTSUBST_ENTRY, *PFONTSUBST_ENTRY;
52
53
54 typedef struct GDI_LOAD_FONT
55 {
56 PUNICODE_STRING pFileName;
57 PSHARED_MEM Memory;
58 DWORD Characteristics;
59 UNICODE_STRING RegValueName;
60 BOOL IsTrueType;
61 PFONT_ENTRY_MEM PrivateEntry;
62 } GDI_LOAD_FONT, *PGDI_LOAD_FONT;
63