8d466bd2ece7c67ec79c3b354ef2e16ec419b75b
[reactos.git] / 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 HANDLE 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 FT_Render_Mode RenderMode;
33 MATRIX mxWorldToDevice;
34 } FONT_CACHE_ENTRY, *PFONT_CACHE_ENTRY;
35
36
37 /*
38 * FONTSUBST_... --- constants for font substitutes
39 */
40 #define FONTSUBST_FROM 0
41 #define FONTSUBST_TO 1
42 #define FONTSUBST_FROM_AND_TO 2
43
44 /*
45 * FONTSUBST_ENTRY --- font substitute entry
46 */
47 typedef struct FONTSUBST_ENTRY
48 {
49 LIST_ENTRY ListEntry;
50 UNICODE_STRING FontNames[FONTSUBST_FROM_AND_TO];
51 BYTE CharSets[FONTSUBST_FROM_AND_TO];
52 } FONTSUBST_ENTRY, *PFONTSUBST_ENTRY;
53
54
55 typedef struct GDI_LOAD_FONT
56 {
57 PUNICODE_STRING pFileName;
58 PSHARED_MEM Memory;
59 DWORD Characteristics;
60 UNICODE_STRING RegValueName;
61 BOOL IsTrueType;
62 PFONT_ENTRY_MEM PrivateEntry;
63 } GDI_LOAD_FONT, *PGDI_LOAD_FONT;
64