7#ifndef PUBLIC_FPDF_SYSFONTINFO_H_
8#define PUBLIC_FPDF_SYSFONTINFO_H_
15#define FXFONT_ANSI_CHARSET 0
16#define FXFONT_DEFAULT_CHARSET 1
17#define FXFONT_SYMBOL_CHARSET 2
18#define FXFONT_SHIFTJIS_CHARSET 128
19#define FXFONT_HANGEUL_CHARSET 129
20#define FXFONT_GB2312_CHARSET 134
21#define FXFONT_CHINESEBIG5_CHARSET 136
22#define FXFONT_GREEK_CHARSET 161
23#define FXFONT_VIETNAMESE_CHARSET 163
24#define FXFONT_HEBREW_CHARSET 177
25#define FXFONT_ARABIC_CHARSET 178
26#define FXFONT_CYRILLIC_CHARSET 204
27#define FXFONT_THAI_CHARSET 222
28#define FXFONT_EASTERNEUROPEAN_CHARSET 238
31#define FXFONT_FF_FIXEDPITCH (1
<< 0
)
32#define FXFONT_FF_ROMAN (1
<< 4
)
33#define FXFONT_FF_SCRIPT (4
<< 4
)
36#define FXFONT_FW_NORMAL 400
37#define FXFONT_FW_BOLD 700
45
46
47
50
51
55
56
57
58
59
60
61
62
63
64
65
66
67
68
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
173 unsigned char* buffer,
174 unsigned long buf_size);
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
196 unsigned long buf_size);
199
200
201
202
203
204
205
206
207
208
209
210
214
215
216
217
218
219
220
221
222
223
224
225
230
231
232
236} FPDF_CharsetFontMap;
239
240
241
242
243
244
245
246
247
251
252
253
254
255
256
257
258
259
260
261
262
268
269
270
271
272
273
274
275
276
277
278
283
284
285
286
287
288
289
290
291
292
293
294
295
296
300
301
302
303
304
305
306
307
308
309
void * GetFont(const ByteString &family) override
bool GetFontCharset(void *hFont, FX_Charset *charset) override
size_t GetFontData(void *hFont, uint32_t table, pdfium::span< uint8_t > buffer) override
CFX_ExternalFontInfo(FPDF_SYSFONTINFO *pInfo)
bool EnumFontList(CFX_FontMapper *pMapper) override
void DeleteFont(void *hFont) override
bool GetFaceName(void *hFont, ByteString *name) override
void * MapFont(int weight, bool bItalic, FX_Charset charset, int pitch_family, const ByteString &face) override
~CFX_ExternalFontInfo() override
void AddInstalledFont(const ByteString &name, FX_Charset charset)
CFX_FontMapper * GetBuiltinMapper() const
static const CharsetFontMap kDefaultTTFMap[]
static CFX_GEModule * Get()
CFX_FontMgr * GetFontMgr() const
const char * c_str() const
ByteString & operator=(ByteString &&that) noexcept
static void * DefaultMapFont(struct _FPDF_SYSFONTINFO *pThis, int weight, FPDF_BOOL use_italic, int charset, int pitch_family, const char *family, FPDF_BOOL *)
void * DefaultGetFont(struct _FPDF_SYSFONTINFO *pThis, const char *family)
static unsigned long DefaultGetFontData(struct _FPDF_SYSFONTINFO *pThis, void *hFont, unsigned int table, unsigned char *buffer, unsigned long buf_size)
FPDF_EXPORT void FPDF_CALLCONV FPDF_SetSystemFontInfo(FPDF_SYSFONTINFO *pFontInfoExt)
static void DefaultDeleteFont(struct _FPDF_SYSFONTINFO *pThis, void *hFont)
static int DefaultGetFontCharset(struct _FPDF_SYSFONTINFO *pThis, void *hFont)
FPDF_EXPORT const FPDF_CharsetFontMap *FPDF_CALLCONV FPDF_GetDefaultTTFMap()
FPDF_EXPORT FPDF_SYSFONTINFO *FPDF_CALLCONV FPDF_GetDefaultSystemFontInfo()
static unsigned long DefaultGetFaceName(struct _FPDF_SYSFONTINFO *pThis, void *hFont, char *buffer, unsigned long buf_size)
FPDF_EXPORT void FPDF_CALLCONV FPDF_AddInstalledFont(void *mapper, const char *face, int charset)
FPDF_EXPORT void FPDF_CALLCONV FPDF_FreeDefaultSystemFontInfo(FPDF_SYSFONTINFO *pFontInfo)
static void DefaultEnumFonts(struct _FPDF_SYSFONTINFO *pThis, void *pMapper)
static void DefaultRelease(struct _FPDF_SYSFONTINFO *pThis)
#define FXFONT_DEFAULT_CHARSET
#define FXFONT_HANGEUL_CHARSET
#define FXFONT_EASTERNEUROPEAN_CHARSET
#define FXFONT_SHIFTJIS_CHARSET
#define FXFONT_SYMBOL_CHARSET
#define FXFONT_GREEK_CHARSET
#define FXFONT_CYRILLIC_CHARSET
#define FXFONT_HEBREW_CHARSET
#define FXFONT_ANSI_CHARSET
#define FXFONT_ARABIC_CHARSET
#define FXFONT_GB2312_CHARSET
#define FXFONT_CHINESEBIG5_CHARSET
#define FXFONT_VIETNAMESE_CHARSET
#define FXFONT_THAI_CHARSET
FX_Charset FX_GetCharsetFromInt(int value)
UnownedPtr< SystemFontInfoIface > m_pFontInfo
void(* Release)(struct _FPDF_SYSFONTINFO *pThis)
void(* DeleteFont)(struct _FPDF_SYSFONTINFO *pThis, void *hFont)
unsigned long(* GetFontData)(struct _FPDF_SYSFONTINFO *pThis, void *hFont, unsigned int table, unsigned char *buffer, unsigned long buf_size)
void *(* GetFont)(struct _FPDF_SYSFONTINFO *pThis, const char *face)
unsigned long(* GetFaceName)(struct _FPDF_SYSFONTINFO *pThis, void *hFont, char *buffer, unsigned long buf_size)
int(* GetFontCharset)(struct _FPDF_SYSFONTINFO *pThis, void *hFont)
void(* EnumFonts)(struct _FPDF_SYSFONTINFO *pThis, void *pMapper)
void *(* MapFont)(struct _FPDF_SYSFONTINFO *pThis, int weight, FPDF_BOOL bItalic, int charset, int pitch_family, const char *face, FPDF_BOOL *bExact)