1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #include "xfa/fxfa/xfa_fontmgr.h"
8
9 #include <algorithm>
10 #include <memory>
11 #include <utility>
12
13 #include "core/fpdfapi/font/cpdf_font.h"
14 #include "core/fpdfapi/parser/cpdf_dictionary.h"
15 #include "core/fpdfapi/parser/cpdf_document.h"
16 #include "third_party/base/ptr_util.h"
17 #include "xfa/fgas/font/cfgas_gefont.h"
18 #include "xfa/fxfa/xfa_ffapp.h"
19 #include "xfa/fxfa/xfa_ffdoc.h"
20
21 namespace {
22
23 // The 5 names per entry are: PsName, Normal, Bold, Italic, BoldItalic.
24 const char* const g_XFAPDFFontName[][5] = {
25 {"Adobe PI Std", "AdobePIStd", "AdobePIStd", "AdobePIStd", "AdobePIStd"},
26 {"Myriad Pro Light", "MyriadPro-Light", "MyriadPro-Semibold",
27 "MyriadPro-LightIt", "MyriadPro-SemiboldIt"},
28 };
29
30 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_
31 const XFA_FONTINFO g_XFAFontsMap[] = {
32 {0x01d5d33e, L"SimSun", L"Arial", 0, 936},
33 {0x01e4f102, L"YouYuan", L"Arial", 1, 936},
34 {0x030549dc, L"LiSu", L"Arial", 1, 936},
35 {0x032edd44, L"Simhei", L"Arial", 1, 936},
36 {0x03eac6fc, L"PoorRichard-Regular", L"Arial", 2, 1252},
37 {0x03ed90e6, L"Nina", L"Arial", 0, 1252},
38 {0x077b56b3, L"KingsoftPhoneticPlain", L"Arial", 0, 1252},
39 {0x078ed524, L"MicrosoftSansSerif", L"Arial", 0, 1252},
40 {0x089b18a9, L"Arial", L"Arial", 0, 1252},
41 {0x0b2cad72, L"MonotypeCorsiva", L"Arial", 8, 1252},
42 {0x0bb003e7, L"Kartika", L"Arial", 2, 1252},
43 {0x0bb469df, L"VinerHandITC", L"Arial", 8, 1252},
44 {0x0bc1a851, L"SegoeUI", L"Arial", 0, 1252},
45 {0x0c112ebd, L"KozukaGothicPro-VIM", L"Arial", 0, 1252},
46 {0x0cfcb9c1, L"AdobeThai", L"Kokila,Arial Narrow", 0, 847},
47 {0x0e7de0f9, L"Playbill", L"Arial", 0, 1252},
48 {0x0eff47c3, L"STHupo", L"Arial", 0, 936},
49 {0x107ad374, L"Constantia", L"Arial", 2, 1252},
50 {0x12194c2d, L"KunstlerScript", L"Arial", 8, 1252},
51 {0x135ef6a1, L"MinionProSmBd",
52 L"Bell MT,Corbel,Times New Roman,Cambria,Berlin Sans FB", 0, 1252},
53 {0x158c4049, L"Garamond", L"Arial", 2, 1252},
54 {0x160ecb24, L"STZhongsong", L"Arial", 0, 936},
55 {0x161ed07e, L"MSGothic", L"Arial", 1, 1252},
56 {0x171d1ed1, L"SnapITC-Regular", L"Arial", 0, 1252},
57 {0x18d1188f, L"Cambria", L"Arial", 2, 1252},
58 {0x18eaf350, L"ArialUnicodeMS", L"Arial", 0, 936},
59 {0x1a92d115, L"MingLiU", L"Arial", 1, 1252},
60 {0x1cc217c6, L"TrebuchetMS", L"Arial", 0, 1252},
61 {0x1d649596, L"BasemicTimes", L"Arial", 0, 1252},
62 {0x1e34ee60, L"BellMT", L"Arial", 2, 1252},
63 {0x1eb36945, L"CooperBlack", L"Arial", 2, 1252},
64 {0x1ef7787d, L"BatangChe", L"Arial", 1, 1252},
65 {0x20b3bd3a, L"BrushScriptMT", L"Arial", 8, 1252},
66 {0x220877aa, L"Candara", L"Arial", 0, 1252},
67 {0x22135007, L"FreestyleScript-Regular", L"Arial", 8, 1252},
68 {0x251059c3, L"Chiller", L"Arial", 0, 1252},
69 {0x25bed6dd, L"MSReferenceSansSerif", L"Arial", 0, 1252},
70 {0x28154c81, L"Parchment-Regular", L"Arial", 8, 1252},
71 {0x29711eb9, L"STLiti", L"Arial", 0, 936},
72 {0x2b1993b4, L"Basemic", L"Arial", 0, 1252},
73 {0x2b316339, L"NiagaraSolid-Reg", L"Arial", 0, 1252},
74 {0x2c147529, L"FootlightMTLight", L"Arial", 0, 1252},
75 {0x2c198928, L"HarlowSolid", L"Arial", 0, 1252},
76 {0x2c6ac6b2, L"LucidaBright", L"Arial", 2, 1252},
77 {0x2c9f38e2, L"KozukaMinchoPro-VIR", L"Arial", 0, 1252},
78 {0x2d5a47b0, L"STCaiyun", L"Arial", 0, 936},
79 {0x2def26bf, L"BernardMT-Condensed", L"Arial", 0, 1252},
80 {0x2fd8930b, L"KozukaMinchoPr6NR", L"Arial", 0, 1252},
81 {0x3115525a, L"FangSong_GB2312", L"Arial", 0, 1252},
82 {0x31327817, L"MyriadPro",
83 L"Calibri,Corbel,Candara,Cambria Math,Franklin Gothic Medium,Arial "
84 L"Narrow,Times New Roman",
85 0, 1252},
86 {0x32244975, L"Helvetica", L"Arial", 0, 1252},
87 {0x32ac995c, L"Terminal", L"Arial", 0, 1252},
88 {0x338d648a, L"NiagaraEngraved-Reg", L"Arial", 0, 1252},
89 {0x33bb65f2, L"Sylfaen", L"Arial", 2, 1252},
90 {0x3402c30e, L"MSPMincho", L"Arial", 2, 1252},
91 {0x3412bf31, L"SimSun-PUA", L"Arial", 0, 936},
92 {0x36eb39b9, L"BerlinSansFB", L"Arial", 0, 1252},
93 {0x36f42055, L"UniversATT", L"Microsoft Sans Serif", 0, 1252},
94 {0x3864c4f6, L"HighTowerText", L"Arial", 2, 1252},
95 {0x3a257d03, L"FangSong_GB2312", L"Arial", 0, 1252},
96 {0x3cdae668, L"FreestyleScript", L"Arial", 8, 1252},
97 {0x3d55aed7, L"Jokerman", L"Arial", 0, 1252},
98 {0x3d5b4385, L"PMingLiU", L"Arial", 2, 1252},
99 {0x3d9b7669, L"EstrangeloEdessa", L"Arial", 0, 1252},
100 {0x3e532d74, L"FranklinGothicMedium", L"Arial", 0, 1252},
101 {0x3e6aa32d, L"NSimSun", L"Arial", 1, 936},
102 {0x3f6c36a8, L"Gautami", L"Arial", 0, 1252},
103 {0x3ff32662, L"Chiller-Regular", L"Arial", 0, 1252},
104 {0x409de312, L"ModernNo.20", L"Arial", 2, 1252},
105 {0x41443c5e, L"Georgia", L"Arial", 2, 1252},
106 {0x4160ade5, L"BellGothicStdBlack",
107 L"Arial,Arial Unicode MS,Book Antiqua,Dotum,Georgia", 0, 1252},
108 {0x421976c4, L"Modern-Regular", L"Arial", 2, 1252},
109 {0x422a7252, L"Stencil", L"Arial", 0, 1252},
110 {0x42c8554f, L"Fixedsys", L"Arial", 0, 1252},
111 {0x435cb41d, L"Roman", L"Arial", 0, 1252},
112 {0x47882383, L"CourierNew", L"Arial", 1, 1252},
113 {0x480a2338, L"BerlinSansFBDemi", L"Arial", 0, 1252},
114 {0x480bf7a4, L"CourierStd", L"Courier New,Verdana", 0, 1252},
115 {0x481ad6ed, L"VladimirScript", L"Arial", 8, 1252},
116 {0x4911577a, L"YouYuan", L"Arial", 1, 936},
117 {0x4a788d72, L"STXingkai", L"Arial", 0, 936},
118 {0x4bf88566, L"SegoeCondensed", L"Arial", 0, 1252},
119 {0x4ccf51a4, L"BerlinSansFB-Reg", L"Arial", 0, 1252},
120 {0x4ea967ce, L"GulimChe", L"Arial", 1, 1252},
121 {0x4f68bd79, L"LetterGothicStd", L"Courier New,Verdana", 0, 1252},
122 {0x51a0d0e6, L"KozukaGothicPr6NM", L"Arial", 0, 1252},
123 {0x531b3dea, L"BasemicSymbol", L"Arial", 0, 1252},
124 {0x5333fd39, L"CalifornianFB-Reg", L"Arial", 2, 1252},
125 {0x53561a54, L"FZYTK--GBK1-0", L"Arial", 0, 936},
126 {0x55e0dde6, L"LucidaSansTypewriter", L"Arial", 0, 1252},
127 {0x574d4d3d, L"AdobeArabic", L"Arial Narrow", 0, 1252},
128 {0x5792e759, L"STKaiti", L"Arial", 0, 936},
129 {0x5921978e, L"LucidaSansUnicode", L"Arial", 0, 1252},
130 {0x594e2da4, L"Vrinda", L"Arial", 0, 1252},
131 {0x59baa9a2, L"KaiTi_GB2312", L"Arial", 0, 1252},
132 {0x5cfedf4f, L"BaskOldFace", L"Arial", 0, 1252},
133 {0x5f97921c, L"AdobeMyungjoStdM",
134 L"Batang,Bookman Old Style,Consolas,STZhongsong", 0, 936},
135 {0x5fefbfad, L"Batang", L"Arial", 2, 1252},
136 {0x605342b9, L"DotumChe", L"Arial", 1, 1252},
137 {0x608c5f9a, L"KaiTi_GB2312", L"Arial", 0, 936},
138 {0x61efd0d1, L"MaturaMTScriptCapitals", L"Arial", 0, 1252},
139 {0x626608a9, L"MVBoli", L"Arial", 0, 1252},
140 {0x630501a3, L"SmallFonts", L"Arial", 0, 1252},
141 {0x65d0e2a9, L"FZYTK--GBK1-0", L"Arial", 0, 936},
142 {0x669f29e1, L"FZSTK--GBK1-0", L"Arial", 0, 936},
143 {0x673a9e5f, L"Tunga", L"Arial", 0, 1252},
144 {0x691aa4ce, L"NiagaraSolid", L"Arial", 0, 1252},
145 {0x696259b7, L"Corbel", L"Arial", 0, 1252},
146 {0x696ee9be, L"STXihei", L"Arial", 0, 936},
147 {0x6c59cf69, L"Dotum", L"Arial", 0, 1252},
148 {0x707fa561, L"Gungsuh", L"Arial", 2, 1252},
149 {0x71416bb2, L"ZWAdobeF", L"Arial", 0, 1252},
150 {0x71b41801, L"Verdana", L"Arial", 0, 1252},
151 {0x73f25e4c, L"PalatinoLinotype", L"Arial", 0, 1252},
152 {0x73f4d19f, L"NiagaraEngraved", L"Arial", 0, 1252},
153 {0x74001694, L"MyriadProBlack", L"Book Antiqua,Constantia,Dotum,Georgia", 0,
154 1252},
155 {0x74b14d8f, L"Haettenschweiler", L"Arial", 0, 1252},
156 {0x74cb44ee, L"NSimSun", L"Arial", 1, 936},
157 {0x76b4d7ff, L"Shruti", L"Arial", 0, 1252},
158 {0x788b3533, L"Webdings", L"Arial", 6, 42},
159 {0x797dde99, L"MSSerif", L"Arial", 0, 1252},
160 {0x7a0f9e9e, L"MSMincho", L"Arial", 1, 1252},
161 {0x7b439caf, L"OldEnglishTextMT", L"Arial", 0, 1252},
162 {0x8213a433, L"LucidaSans-Typewriter", L"Arial", 0, 1252},
163 {0x82fec929, L"AdobeSongStdL",
164 L"Centaur,Calibri,STSong,Bell MT,Garamond,Times New Roman", 0, 936},
165 {0x83581825, L"Modern", L"Arial", 0, 1252},
166 {0x835a2823, L"Algerian", L"Arial", 0, 1252},
167 {0x83dab9f5, L"Script", L"Arial", 0, 1252},
168 {0x847b56da, L"Tahoma", L"Arial", 0, 1252},
169 {0x8a783cb2, L"SimSun-PUA", L"Arial", 0, 1252},
170 {0x8b5cac0e, L"Onyx", L"Arial", 0, 1252},
171 {0x8c6a499e, L"Gulim", L"Arial", 0, 1252},
172 {0x8e0af790, L"JuiceITC", L"Arial", 0, 1252},
173 {0x8e8d43b2, L"Centaur", L"Arial", 2, 1252},
174 {0x8ee4dcca, L"BookshelfSymbol7", L"Arial", 0, 1252},
175 {0x90794800, L"BellGothicStdLight", L"Bell MT,Calibri,Times New Roman", 0,
176 1252},
177 {0x909b516a, L"Century", L"Arial", 2, 1252},
178 {0x92ae370d, L"MSOutlook", L"Arial", 4, 42},
179 {0x93c9fbf1, L"LucidaFax", L"Arial", 2, 1252},
180 {0x9565085e, L"BookAntiqua", L"Arial", 2, 1252},
181 {0x9856d95d, L"AdobeMingStdL", L"Arial,Arial Unicode MS,Cambria,BatangChe",
182 0, 949},
183 {0x9bbadd6b, L"ColonnaMT", L"Arial", 0, 1252},
184 {0x9cbd16a4, L"ShowcardGothic-Reg", L"Arial", 0, 1252},
185 {0x9d73008e, L"MSSansSerif", L"Arial", 0, 1252},
186 {0xa0607db1, L"GungsuhChe", L"Arial", 1, 1252},
187 {0xa0bcf6a1, L"LatinWide", L"Arial", 2, 1252},
188 {0xa1429b36, L"Symbol", L"Arial", 6, 42},
189 {0xa1fa5abc, L"Wingdings2", L"Arial", 6, 42},
190 {0xa1fa5abd, L"Wingdings3", L"Arial", 6, 42},
191 {0xa427bad4, L"InformalRoman-Regular", L"Arial", 8, 1252},
192 {0xa8b92ece, L"FZSTK--GBK1-0", L"Arial", 0, 936},
193 {0xa8d83ece, L"CalifornianFB", L"Arial", 2, 1252},
194 {0xaa3e082c, L"Kingsoft-Phonetic", L"Arial", 0, 1252},
195 {0xaa6bcabe, L"HarlowSolidItalic", L"Arial", 0, 1252},
196 {0xade5337c, L"MSUIGothic", L"Arial", 0, 1252},
197 {0xb08dd941, L"WideLatin", L"Arial", 2, 1252},
198 {0xb207f05d, L"PoorRichard", L"Arial", 2, 1252},
199 {0xb3bc492f, L"JuiceITC-Regular", L"Arial", 0, 1252},
200 {0xb5545399, L"Marlett", L"Arial", 4, 42},
201 {0xb5dd1ebb, L"BritannicBold", L"Arial", 0, 1252},
202 {0xb699c1c5, L"LucidaCalligraphy-Italic", L"Arial", 0, 1252},
203 {0xb725d629, L"TimesNewRoman", L"Arial", 2, 1252},
204 {0xb7eaebeb, L"AdobeHeitiStdR", L"Batang,Century,Dotum", 0, 936},
205 {0xbd29c486, L"BerlinSansFBDemi-Bold", L"Arial", 0, 1252},
206 {0xbe8a8db4, L"BookshelfSymbolSeven", L"Arial", 0, 1252},
207 {0xc16c0118, L"AdobeHebrew", L"Bell MT,Berlin Sans FB,Calibri", 0, 1252},
208 {0xc318b0af, L"MyriadProLight", L"Calibri,STFangsong,Times New Roman", 0,
209 1252},
210 {0xc65e5659, L"CambriaMath", L"Arial", 2, 1252},
211 {0xc75c8f05, L"LucidaConsole", L"Arial", 1, 1252},
212 {0xca7c35d6, L"Calibri", L"Arial", 0, 1252},
213 {0xcb053f53, L"MicrosoftYaHei", L"Arial", 0, 936},
214 {0xcb7190f9, L"Magneto-Bold", L"Arial", 0, 1252},
215 {0xcca00cc5, L"System", L"Arial", 0, 1252},
216 {0xccad6f76, L"Jokerman-Regular", L"Arial", 0, 1252},
217 {0xccc5818c, L"EuroSign", L"Arial", 0, 1252},
218 {0xcf3d7234, L"LucidaHandwriting-Italic", L"Arial", 0, 1252},
219 {0xcf7b8fdb, L"MinionPro",
220 L"Bell MT,Corbel,Times New Roman,Cambria,Berlin Sans FB", 0, 1252},
221 {0xcfe5755f, L"Simhei", L"Arial", 1, 936},
222 {0xd011f4ee, L"MSPGothic", L"Arial", 0, 1252},
223 {0xd060e7ef, L"Vivaldi", L"Arial", 8, 1252},
224 {0xd07edec1, L"FranklinGothic-Medium", L"Arial", 0, 1252},
225 {0xd107243f, L"SimSun", L"Arial", 0, 936},
226 {0xd1881562, L"ArialNarrow", L"Arial Narrow", 0, 1252},
227 {0xd22b7dce, L"BodoniMTPosterCompressed", L"Arial", 0, 1252},
228 {0xd22bfa60, L"ComicSansMS", L"Arial", 8, 1252},
229 {0xd3bd0e35, L"Bauhaus93", L"Arial", 0, 1252},
230 {0xd429ee7a, L"STFangsong", L"Arial", 0, 936},
231 {0xd6679c12, L"BernardMTCondensed", L"Arial", 0, 1252},
232 {0xd8e8a027, L"LucidaSans", L"Arial", 0, 1252},
233 {0xd9fe7761, L"HighTowerText-Reg", L"Arial", 2, 1252},
234 {0xda7e551e, L"STSong", L"Arial", 0, 936},
235 {0xdaa6842d, L"STZhongsong", L"Arial", 0, 936},
236 {0xdaaab93f, L"STFangsong", L"Arial", 0, 936},
237 {0xdaeb0713, L"STSong", L"Arial", 0, 936},
238 {0xdafedbef, L"STCaiyun", L"Arial", 0, 936},
239 {0xdb00a3d9, L"Broadway", L"Arial", 0, 1252},
240 {0xdb1f5ad4, L"STXinwei", L"Arial", 0, 936},
241 {0xdb326e7f, L"STKaiti", L"Arial", 0, 936},
242 {0xdb69595a, L"STHupo", L"Arial", 0, 936},
243 {0xdba0082c, L"STXihei", L"Arial", 0, 936},
244 {0xdbd0ab18, L"STXingkai", L"Arial", 0, 936},
245 {0xdc1a7db1, L"STLiti", L"Arial", 0, 936},
246 {0xdc33075f, L"KristenITC-Regular", L"Arial", 8, 1252},
247 {0xdcc7009c, L"Harrington", L"Arial", 0, 1252},
248 {0xdd712466, L"ArialBlack", L"Arial", 0, 1252},
249 {0xdde87b3e, L"Impact", L"Arial", 0, 1252},
250 {0xdf69fb32, L"SnapITC", L"Arial", 0, 1252},
251 {0xdf8b25e8, L"CenturyGothic", L"Arial", 0, 1252},
252 {0xe0f705c0, L"KristenITC", L"Arial", 8, 1252},
253 {0xe1427573, L"Raavi", L"Arial", 0, 1252},
254 {0xe2cea0cb, L"Magneto", L"Arial", 0, 1252},
255 {0xe36a9e17, L"Ravie", L"Arial", 0, 1252},
256 {0xe433f8e2, L"Parchment", L"Arial", 8, 1252},
257 {0xe43dff4a, L"Wingdings", L"Arial", 4, 42},
258 {0xe4e2c405, L"MTExtra", L"Arial", 6, 42},
259 {0xe618cc35, L"InformalRoman", L"Arial", 8, 1252},
260 {0xe6c27ffc, L"Mistral", L"Arial", 8, 1252},
261 {0xe7ebf4b9, L"Courier", L"Courier New", 0, 1252},
262 {0xe8bc4a9d, L"MSReferenceSpecialty", L"Arial", 0, 1252},
263 {0xe90fb013, L"TempusSansITC", L"Arial", 0, 1252},
264 {0xec637b42, L"Consolas", L"Verdana", 1, 1252},
265 {0xed3a683b, L"STXinwei", L"Arial", 0, 936},
266 {0xef264cd1, L"LucidaHandwriting", L"Arial", 0, 1252},
267 {0xf086bca2, L"BaskervilleOldFace", L"Arial", 0, 1252},
268 {0xf1028030, L"Mangal", L"Arial", 2, 1252},
269 {0xf1da7eb9, L"ShowcardGothic", L"Arial", 0, 1252},
270 {0xf210f06a, L"ArialMT", L"Arial", 0, 1252},
271 {0xf477f16a, L"Latha", L"Arial", 0, 1252},
272 {0xf616f3dd, L"LiSu", L"Arial", 1, 936},
273 {0xfa479aa6, L"MicrosoftYaHei", L"Arial", 0, 936},
274 {0xfcd19697, L"BookmanOldStyle", L"Arial", 0, 1252},
275 {0xfe209a82, L"LucidaCalligraphy", L"Arial", 0, 1252},
276 {0xfef135f8, L"AdobeHeitiStd-Regular", L"Batang,Century,Dotum", 0, 936},
277 };
278 #elif _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_
279 const XFA_FONTINFO g_XFAFontsMap[] = {
280 {0x01d5d33e, L"SimSun",
281 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR "
282 L"PL UMing TW MBE",
283 0, 936},
284 {0x01e4f102, L"YouYuan",
285 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR "
286 L"PL UMing TW MBE",
287 1, 936},
288 {0x030549dc, L"LiSu",
289 L"WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Zen Hei "
290 L"Mono,WenQuanYi Micro Hei",
291 1, 936},
292 {0x032edd44, L"Simhei",
293 L"WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Zen Hei "
294 L"Mono,WenQuanYi Micro Hei",
295 1, 936},
296 {0x03eac6fc, L"PoorRichard-Regular", L"Droid Sans Japanese,FreeSerif", 2,
297 1252},
298 {0x03ed90e6, L"Nina", L"FreeSerif", 0, 1252},
299 {0x077b56b3, L"KingsoftPhoneticPlain",
300 L"Tibetan Machine Uni,LKLUG,Samyak Gujarati,Droid Sans Thai,Droid Sans "
301 L"Armenian,Untitled1,utkal,Lohit Oriya",
302 0, 1252},
303 {0x078ed524, L"MicrosoftSansSerif",
304 L"Droid Sans Japanese,FreeSerif,WenQuanYi Micro Hei", 0, 1252},
305 {0x089b18a9, L"Arial",
306 L"Droid Sans Japanese,DejaVu Sans Condensed,FreeSerif,WenQuanYi Micro Hei",
307 0, 1252},
308 {0x0b2cad72, L"MonotypeCorsiva", L"Droid Sans Japanese,FreeSerif", 8, 1252},
309 {0x0bb003e7, L"Kartika",
310 L"FreeSans,Liberation Sans,Liberation Sans Narrow,Nimbus Sans "
311 L"L,Garuda,FreeSerif,WenQuanYi Micro Hei",
312 2, 1252},
313 {0x0bb469df, L"VinerHandITC",
314 L"Droid Sans Japanese,Ubuntu,Liberation Sans,Liberation Serif", 8, 1252},
315 {0x0bc1a851, L"SegoeUI", L"Droid Sans Japanese,DejaVu Sans", 0, 1252},
316 {0x0c112ebd, L"KozukaGothicPro-VIM", L"FreeSerif", 0, 1252},
317 {0x0cfcb9c1, L"AdobeThai", L"Droid Sans Japanese,Waree", 0, 847},
318 {0x0e7de0f9, L"Playbill",
319 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid "
320 L"Sans Ethiopic,Droid Sans Japanese,FreeSerif",
321 0, 1252},
322 {0x0eff47c3, L"STHupo", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
323 936},
324 {0x107ad374, L"Constantia",
325 L"Droid Sans Japanese,FreeSerif,WenQuanYi Micro Hei,Ubuntu", 2, 1252},
326 {0x12194c2d, L"KunstlerScript", L"Droid Sans Japanese,Liberation Serif", 8,
327 1252},
328 {0x135ef6a1, L"MinionProSmBd", L"Liberation Serif", 0, 1252},
329 {0x158c4049, L"Garamond",
330 L"Droid Sans Japanese,Liberation Serif,Ubuntu,FreeSerif", 2, 1252},
331 {0x160ecb24, L"STZhongsong",
332 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
333 L"Sharp,WenQuanYi Micro Hei",
334 0, 936},
335 {0x161ed07e, L"MSGothic",
336 L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,AR PL "
337 L"UMing CN,AR PL UMing HK,AR PL UMing TW",
338 1, 1252},
339 {0x171d1ed1, L"SnapITC-Regular",
340 L"Liberation Sans Narrow,Ubuntu Condensed,Nimbus Sans L,DejaVu Sans", 0,
341 1252},
342 {0x18d1188f, L"Cambria", L"Droid Sans Japanese,FreeSerif,FreeMono", 2,
343 1252},
344 {0x18eaf350, L"ArialUnicodeMS",
345 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
346 L"Sharp,WenQuanYi Micro Hei",
347 0, 936},
348 {0x1a92d115, L"MingLiU",
349 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
350 L"Sharp,WenQuanYi Micro Hei",
351 1, 1252},
352 {0x1cc217c6, L"TrebuchetMS",
353 L"Droid Sans Japanese,Liberation Serif,FreeSerif,Ubuntu", 0, 1252},
354 {0x1d649596, L"BasemicTimes",
355 L"Liberation Serif,Times New Roman,Droid Sans Japanese,FreeSerif,Ubuntu",
356 0, 1252},
357 {0x1e34ee60, L"BellMT",
358 L"KacstQurn,Droid Sans Japanese,Ubuntu,Liberation Serif", 2, 1252},
359 {0x1eb36945, L"CooperBlack",
360 L"KacstQurn,Droid Sans Japanese,FreeMono,Liberation Mono, WenQuanYi Micro "
361 L"Hei Mono",
362 2, 1252},
363 {0x1ef7787d, L"BatangChe",
364 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing "
365 L"TW,WenQuanYi Zen Hei,WenQuanYi Micro Hei",
366 1, 1252},
367 {0x20b3bd3a, L"BrushScriptMT",
368 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans "
369 L"Japanese,URW Chancery L,Liberation Sans",
370 8, 1252},
371 {0x220877aa, L"Candara", L"Droid Sans Japanese,DejaVu Sans", 0, 1252},
372 {0x22135007, L"FreestyleScript-Regular",
373 L"KacstQurn,Droid Sans Japanese,Liberation Sans", 8, 1252},
374 {0x251059c3, L"Chiller",
375 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans "
376 L"Japanese,Liberation Sans",
377 0, 1252},
378 {0x25bed6dd, L"MSReferenceSansSerif",
379 L"DejaVu Sans Condensed,Ubuntu Condensed,Droid Sans Japanese,AR PL UKai "
380 L"HK",
381 0, 1252},
382 {0x28154c81, L"Parchment-Regular", L"Droid Sans Japanese,Liberation Sans",
383 8, 1252},
384 {0x29711eb9, L"STLiti", L"AR PL UKai HK", 0, 936},
385 {0x2b1993b4, L"Basemic",
386 L"Liberation Serif,Droid Sans Japanese,Liberation Sans", 0, 1252},
387 {0x2b316339, L"NiagaraSolid-Reg", L"Droid Sans Japanese,Liberation Sans", 0,
388 1252},
389 {0x2c147529, L"FootlightMTLight",
390 L"KacstQurn,Droid Sans Japanese,Liberation Sans", 0, 1252},
391 {0x2c198928, L"HarlowSolid",
392 L"KacstQurn,Droid Sans Japanese,Liberation Sans", 0, 1252},
393 {0x2c6ac6b2, L"LucidaBright",
394 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid "
395 L"Sans Japanese,Liberation Sans",
396 2, 1252},
397 {0x2c9f38e2, L"KozukaMinchoPro-VIR", L"DejaVu Sans", 0, 1252},
398 {0x2d5a47b0, L"STCaiyun", L"AR PL UKai HK", 0, 936},
399 {0x2def26bf, L"BernardMT-Condensed",
400 L"KacstQurn,Droid Sans Japanese,DejaVu Serif", 0, 1252},
401 {0x2fd8930b, L"KozukaMinchoPr6NR", L"DejaVu Serif", 0, 1252},
402 {0x3115525a, L"FangSong_GB2312",
403 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
404 L"Sharp,WenQuanYi Micro Hei",
405 0, 1252},
406 {0x31327817, L"MyriadPro",
407 L"Ubuntu Condensed,Droid Sans Japanese, FreeSerif", 0, 1252},
408 {0x32244975, L"Helvetica",
409 L"Ubuntu,DejaVu Sans Condensed,Liberation Sans,Liberation Sans "
410 L"Narrow,Nimbus Sans L",
411 0, 1252},
412 {0x32ac995c, L"Terminal", L"DejaVu Serif", 0, 1252},
413 {0x338d648a, L"NiagaraEngraved-Reg", L"Droid Sans Japanese,DejaVu Serif", 0,
414 1252},
415 {0x33bb65f2, L"Sylfaen", L"Droid Sans Japanese,DejaVu Sans", 2, 1252},
416 {0x3402c30e, L"MSPMincho",
417 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 2,
418 1252},
419 {0x3412bf31, L"SimSun-PUA",
420 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing CN,AR PL UMing HK", 0,
421 936},
422 {0x36eb39b9, L"BerlinSansFB",
423 L"Droid Sans Japanese,Liberation Serif,Ubuntu,FreeSerif", 0, 1252},
424 {0x36f42055, L"UniversATT", L"Microsoft Sans Serif", 0, 1252},
425 {0x3864c4f6, L"HighTowerText", L"Droid Sans Japanese,DejaVu Serif", 2,
426 1252},
427 {0x3a257d03, L"FangSong_GB2312",
428 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei", 0, 1252},
429 {0x3c7d1d07, L"Garamond3LTStd",
430 L"Droid Sans Japanese,Ubuntu Condensed,DejaVu Sans Condensed,Liberation "
431 L"Serif,Ubuntu,FreeSerif",
432 2, 1252},
433 {0x3cdae668, L"FreestyleScript",
434 L"KacstQurn,Droid Sans Japanese,DejaVu Sans", 8, 1252},
435 {0x3d55aed7, L"Jokerman", L"Droid Sans Japanese,DejaVu Sans", 0, 1252},
436 {0x3d5b4385, L"PMingLiU",
437 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
438 L"Sharp,WenQuanYi Micro Hei",
439 2, 1252},
440 {0x3d9b7669, L"EstrangeloEdessa", L"Droid Sans Japanese,DejaVu Sans", 0,
441 1252},
442 {0x3e532d74, L"FranklinGothicMedium", L"Droid Sans Japanese,Ubuntu", 0,
443 1252},
444 {0x3e6aa32d, L"NSimSun",
445 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
446 L"Sharp,WenQuanYi Micro Hei",
447 1, 936},
448 {0x3f6c36a8, L"Gautami",
449 L"Droid Arabic Naskh,Droid Sans Ethiopic, mry_KacstQurn,Droid Sans "
450 L"Japanese,FreeSans",
451 0, 1252},
452 {0x3ff32662, L"Chiller-Regular",
453 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,FreeSans", 0, 1252},
454 {0x409de312, L"ModernNo.20",
455 L"KacstQurn,Droid Sans Japanese,Nimbus Sans L,Nimbus Sans L,FreeSans", 2,
456 1252},
457 {0x41443c5e, L"Georgia", L"Droid Sans Japanese,FreeSans", 2, 1252},
458 {0x4160ade5, L"BellGothicStdBlack", L"FreeSans", 0, 1252},
459 {0x421976c4, L"Modern-Regular", L"FreeSans", 2, 1252},
460 {0x422a7252, L"Stencil", L"Droid Sans Japanese,FreeSans,Liberation Sans", 0,
461 1252},
462 {0x42c8554f, L"Fixedsys", L"FreeSerif", 0, 1252},
463 {0x435cb41d, L"Roman", L"FreeSerif", 0, 1252},
464 {0x47882383, L"CourierNew",
465 L"FreeMono,WenQuanYi Micro Hei Mono,AR PL UKai CN,AR PL UKai HK,AR PL "
466 L"UKai TW,AR PL UKai TW MBE,DejaVu Sans",
467 1, 1252},
468 {0x480a2338, L"BerlinSansFBDemi", L"Droid Sans Japanese,Liberation Serif",
469 0, 1252},
470 {0x480bf7a4, L"CourierStd", L"DejaVu Sans", 0, 1252},
471 {0x481ad6ed, L"VladimirScript", L"Droid Sans Japanese,DejaVu Serif", 8,
472 1252},
473 {0x4911577a, L"YouYuan",
474 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 1,
475 936},
476 {0x4a788d72, L"STXingkai", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
477 936},
478 {0x4bf88566, L"SegoeCondensed", L"FreeSerif", 0, 1252},
479 {0x4ccf51a4, L"BerlinSansFB-Reg", L"Droid Sans Japanese,Liberation Serif",
480 0, 1252},
481 {0x4ea967ce, L"GulimChe",
482 L"WenQuanYi Zen Hei Mono,AR PL UKai CN,AR PL UKai HK,AR PL UKai TW,AR PL "
483 L"UKai TW MBE",
484 1, 1252},
485 {0x4f68bd79, L"LetterGothicStd",
486 L"FreeMono,Liberation Mono,Andale Mono,WenQuanYi Micro Hei Mono", 0, 1252},
487 {0x51a0d0e6, L"KozukaGothicPr6NM", L"FreeSerif", 0, 1252},
488 {0x531b3dea, L"BasemicSymbol", L"FreeSerif", 0, 1252},
489 {0x5333fd39, L"CalifornianFB-Reg",
490 L"Droid Sans Japanese,URW Chancery L,FreeSerif", 2, 1252},
491 {0x53561a54, L"FZYTK--GBK1-0",
492 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
493 L"Sharp,WenQuanYi Micro Hei",
494 0, 936},
495 {0x55e0dde6, L"LucidaSansTypewriter",
496 L"Ubuntu Mono,DejaVu Sans Mono,Nimbus Mono L,Liberation Mono,Courier 10 "
497 L"Pitch,FreeMono",
498 0, 1252},
499 {0x574d4d3d, L"AdobeArabic", L"Droid Sans Japanese,DejaVu Sans", 0, 1252},
500 {0x5792e759, L"STKaiti", L"WenQuanYi Micro Hei Mono", 0, 936},
501 {0x5921978e, L"LucidaSansUnicode", L"Droid Sans Japanese,DejaVu Sans", 0,
502 1252},
503 {0x594e2da4, L"Vrinda",
504 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Arabic "
505 L"Naskh,mry_KacstQurn,Droid Sans Japanese,FreeSans,FreeSerif",
506 0, 1252},
507 {0x59baa9a2, L"KaiTi_GB2312",
508 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
509 L"Sharp,WenQuanYi Micro Hei",
510 0, 1252},
511 {0x5cfedf4f, L"BaskOldFace",
512 L"KacstQurn,Droid Sans Japanese,Ubuntu,Liberation Serif", 0, 1252},
513 {0x5e16ac91, L"TrajanPro",
514 L"Nimbus Sans L,AR PL UMing HK,AR PL UKai HK,AR PL UMing TW,AR PL UMing "
515 L"TW MBE,DejaVu Sans,DejaVu Serif",
516 0, 1252},
517 {0x5f388196, L"ITCLegacySansStdMedium",
518 L"Liberation Serif,FreeSerif,FreeSans,Ubuntu", 0, 1252},
519 {0x5f97921c, L"AdobeMyungjoStdM",
520 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
521 L"Sharp,WenQuanYi Micro Hei",
522 0, 936},
523 {0x5fefbfad, L"Batang",
524 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
525 L"Sharp,WenQuanYi Micro Hei",
526 2, 1252},
527 {0x605342b9, L"DotumChe",
528 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 1,
529 1252},
530 {0x608c5f9a, L"KaiTi_GB2312",
531 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
532 L"Sharp,WenQuanYi Micro Hei",
533 0, 936},
534 {0x61efd0d1, L"MaturaMTScriptCapitals",
535 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid "
536 L"Sans Japanese,DejaVu Serif,DejaVu Sans",
537 0, 1252},
538 {0x626608a9, L"MVBoli",
539 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans "
540 L"Ethiopic,Droid Sans Japanese,DejaVu Sans",
541 0, 1252},
542 {0x630501a3, L"SmallFonts", L"DejaVu Serif", 0, 1252},
543 {0x65d0e2a9, L"FZYTK--GBK1-0",
544 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
545 L"Sharp,WenQuanYi Micro Hei",
546 0, 936},
547 {0x669f29e1, L"FZSTK--GBK1-0",
548 L"AR PL UMing CN,AR PL UKai CN, AR PL UMing HK", 0, 936},
549 {0x673a9e5f, L"Tunga",
550 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans "
551 L"Japanese,DejaVu Serif",
552 0, 1252},
553 {0x691aa4ce, L"NiagaraSolid", L"Droid Sans Japanese,DejaVu Serif", 0, 1252},
554 {0x696259b7, L"Corbel", L"Droid Sans Japanese,DejaVu Sans", 0, 1252},
555 {0x696ee9be, L"STXihei", L"WenQuanYi Micro Hei Mono", 0, 936},
556 {0x6c59cf69, L"Dotum", L"WenQuanYi Zen Hei Mono", 0, 1252},
557 {0x707fa561, L"Gungsuh", L"WenQuanYi Zen Hei Mono", 2, 1252},
558 {0x71416bb2, L"ZWAdobeF",
559 L"KacstArt,KacstBookm,KacstDecorative,KacstDigital,KacstFarsi,KacstLetter,"
560 L"KacstOffice,Dingbats,FreeSerif",
561 0, 1252},
562 {0x71b41801, L"Verdana",
563 L"DejaVu Sans Condensed,Ubuntu Condensed,Droid Sans Japanese,DejaVu Sans",
564 0, 1252},
565 {0x73f25e4c, L"PalatinoLinotype", L"Droid Sans Japanese,FreeSerif", 0,
566 1252},
567 {0x73f4d19f, L"NiagaraEngraved", L"Droid Sans Japanese,FreeSerif", 0, 1252},
568 {0x74001694, L"MyriadProBlack", L"Droid Sans Japanese,AR PL UKai HK", 0,
569 1252},
570 {0x74b14d8f, L"Haettenschweiler", L"Droid Sans Japanese,DejaVu Serif", 0,
571 1252},
572 {0x74cb44ee, L"NSimSun", L"WenQuanYi Zen Hei Mono", 1, 936},
573 {0x76b4d7ff, L"Shruti",
574 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans "
575 L"Japanese,FreeSans",
576 0, 1252},
577 {0x788b3533, L"Webdings", L"FreeSans", 6, 42},
578 {0x797dde99, L"MSSerif", L"FreeSans", 0, 1252},
579 {0x7a0f9e9e, L"MSMincho",
580 L"WenQuanYi Micro Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW",
581 1, 1252},
582 {0x7b439caf, L"OldEnglishTextMT",
583 L"Droid Sans Japanese,Liberation Sans,Ubuntu", 0, 1252},
584 {0x8213a433, L"LucidaSans-Typewriter",
585 L"Ubuntu Mono,Liberation Mono,DejaVu Sans Mono", 0, 1252},
586 {0x82fec929, L"AdobeSongStdL",
587 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
588 L"Sharp,WenQuanYi Micro Hei",
589 0, 936},
590 {0x83581825, L"Modern", L"FreeSans", 0, 1252},
591 {0x835a2823, L"Algerian",
592 L"KacstQurn,Droid Sans Japanese,FreeSans,Liberation Sans,Ubuntu", 0, 1252},
593 {0x83dab9f5, L"Script", L"FreeSans", 0, 1252},
594 {0x847b56da, L"Tahoma",
595 L"Droid Sans Japanese,DejaVu Sans Condensed,FreeSerif", 0, 1252},
596 {0x8a783cb2, L"SimSun-PUA",
597 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
598 L"Sharp,WenQuanYi Micro Hei",
599 0, 1252},
600 {0x8b5cac0e, L"Onyx", L"Droid Sans Japanese,Liberation Sans", 0, 1252},
601 {0x8c6a499e, L"Gulim",
602 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
603 L"Sharp,WenQuanYi Micro Hei",
604 0, 1252},
605 {0x8e0af790, L"JuiceITC", L"Droid Sans Japanese,Liberation Sans", 0, 1252},
606 {0x8e8d43b2, L"Centaur",
607 L"KacstQurn,Droid Sans Japanese,Khmer OS,Khmer OS System", 2, 1252},
608 {0x8ee4dcca, L"BookshelfSymbol7", L"Liberation Sans", 0, 1252},
609 {0x90794800, L"BellGothicStdLight", L"Liberation Sans", 0, 1252},
610 {0x909b516a, L"Century",
611 L"Droid Sans Japanese,Liberation Sans,Liberation Mono,Liberation Serif", 2,
612 1252},
613 {0x92ae370d, L"MSOutlook", L"Liberation Sans", 4, 42},
614 {0x93c9fbf1, L"LucidaFax",
615 L"KacstQurn,Droid Arabic Naskh,Droid Sans "
616 L"Ethiopic,mry_KacstQurn,Liberation Sans",
617 2, 1252},
618 {0x9565085e, L"BookAntiqua",
619 L"Droid Sans Japanese,Liberation Sans,Liberation Serif", 2, 1252},
620 {0x9856d95d, L"AdobeMingStdL", L"AR PL UMing HK", 0, 949},
621 {0x9bbadd6b, L"ColonnaMT",
622 L"KacstQurn,Droid Sans Japanese,Khmer OS,Khmer OS System", 0, 1252},
623 {0x9cbd16a4, L"ShowcardGothic-Reg",
624 L"Droid Sans Japanese,Liberation Sans,Ubuntu", 0, 1252},
625 {0x9d73008e, L"MSSansSerif", L"FreeSerif", 0, 1252},
626 {0xa0607db1, L"GungsuhChe",
627 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
628 L"Sharp,WenQuanYi Micro Hei",
629 1, 1252},
630 {0xa0bcf6a1, L"LatinWide", L"FreeSerif", 2, 1252},
631 {0xa1429b36, L"Symbol", L"FreeSerif", 6, 42},
632 {0xa1fa5abc, L"Wingdings2", L"FreeSerif", 6, 42},
633 {0xa1fa5abd, L"Wingdings3", L"FreeSerif", 6, 42},
634 {0xa427bad4, L"InformalRoman-Regular",
635 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans "
636 L"Japanese,FreeSerif",
637 8, 1252},
638 {0xa8b92ece, L"FZSTK--GBK1-0", L"AR PL UMing CN", 0, 936},
639 {0xa8d83ece, L"CalifornianFB", L"Droid Sans Japanese,FreeSerif", 2, 1252},
640 {0xaa3e082c, L"Kingsoft-Phonetic",
641 L"Tibetan Machine Uni,LKLUG,Samyak Gujarati,Droid Sans "
642 L"Thai,utkal,Kedage,Mallige,AR PL UKai CN",
643 0, 1252},
644 {0xaa6bcabe, L"HarlowSolidItalic",
645 L"KacstQurn,Droid Sans Japanese,Liberation Serif", 0, 1252},
646 {0xade5337c, L"MSUIGothic",
647 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
648 L"Sharp,WenQuanYi Micro Hei",
649 0, 1252},
650 {0xb08dd941, L"WideLatin",
651 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid "
652 L"Sans Japanese,Liberation Serif",
653 2, 1252},
654 {0xb12765e0, L"ITCLegacySansStdBook",
655 L"AR PL UMing HK,AR PL UKai HK,FreeSerif,Ubuntu,FreeSans", 0, 1252},
656 {0xb207f05d, L"PoorRichard", L"Droid Sans Japanese,Liberation Serif", 2,
657 1252},
658 {0xb3bc492f, L"JuiceITC-Regular", L"Droid Sans Japanese,Liberation Serif",
659 0, 1252},
660 {0xb5545399, L"Marlett", L"Liberation Serif", 4, 42},
661 {0xb5dd1ebb, L"BritannicBold",
662 L"KacstQurn,Droid Arabic Naskh,Droid Sans "
663 L"Ethiopic,mry_KacstQurn,Liberation Serif",
664 0, 1252},
665 {0xb699c1c5, L"LucidaCalligraphy-Italic",
666 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid "
667 L"Sans Japanese,DejaVu Serif",
668 0, 1252},
669 {0xb725d629, L"TimesNewRoman", L"Droid Sans Japanese,Liberation Sans", 2,
670 1252},
671 {0xb7eaebeb, L"AdobeHeitiStdR",
672 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
673 L"Sharp,WenQuanYi Micro Hei",
674 0, 936},
675 {0xbd29c486, L"BerlinSansFBDemi-Bold", L"Droid Sans Japanese,DejaVu Serif",
676 0, 1252},
677 {0xbe8a8db4, L"BookshelfSymbolSeven", L"DejaVu Sans", 0, 1252},
678 {0xc16c0118, L"AdobeHebrew", L"Droid Sans Japanese,Ubuntu,Liberation Serif",
679 0, 1252},
680 {0xc318b0af, L"MyriadProLight",
681 L"Droid Sans Japanese,AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
682 1252},
683 {0xc65e5659, L"CambriaMath", L"Droid Sans Japanese,FreeSerif,FreeMono", 2,
684 1252},
685 {0xc75c8f05, L"LucidaConsole",
686 L"Liberation Mono,DejaVu Sans Mono,FreeMono,WenQuanYi Micro Hei Mono", 1,
687 1252},
688 {0xca7c35d6, L"Calibri", L"Droid Sans Japanese,DejaVu Sans", 0, 1252},
689 {0xcb053f53, L"MicrosoftYaHei",
690 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
691 L"Sharp,WenQuanYi Micro Hei",
692 0, 936},
693 {0xcb7190f9, L"Magneto-Bold",
694 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans "
695 L"Japanese,DejaVu Serif",
696 0, 1252},
697 {0xcca00cc5, L"System", L"DejaVu Sans", 0, 1252},
698 {0xccad6f76, L"Jokerman-Regular", L"Droid Sans Japanese,DejaVu Sans", 0,
699 1252},
700 {0xccc5818c, L"EuroSign", L"DejaVu Serif", 0, 1252},
701 {0xcf3d7234, L"LucidaHandwriting-Italic",
702 L"Liberation Sans Narrow,Ubuntu Condensed,Nimbus Sans L,DejaVu Serif", 0,
703 1252},
704 {0xcf7b8fdb, L"MinionPro", L"DejaVu Sans", 0, 1252},
705 {0xcfe5755f, L"Simhei",
706 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
707 L"Sharp,WenQuanYi Micro Hei",
708 1, 936},
709 {0xd011f4ee, L"MSPGothic",
710 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 0,
711 1252},
712 {0xd060e7ef, L"Vivaldi",
713 L"KacstQurn,Droid Sans Japanese,Liberation Sans,Ubuntu", 8, 1252},
714 {0xd07edec1, L"FranklinGothic-Medium", L"Droid Sans Japanese,Ubuntu", 0,
715 1252},
716 {0xd107243f, L"SimSun", L"WenQuanYi Zen Hei Mono", 0, 936},
717 {0xd1881562, L"ArialNarrow",
718 L"Liberation Sans Narrow,Droid Sans Japanese,FreeSerif", 0, 1252},
719 {0xd22b7dce, L"BodoniMTPosterCompressed",
720 L"Droid Sans Japanese,DejaVu Serif", 0, 1252},
721 {0xd22bfa60, L"ComicSansMS",
722 L"Droid Sans Japanese,FreeMono,Liberation Mono", 8, 1252},
723 {0xd3bd0e35, L"Bauhaus93",
724 L"KacstQurn,Droid Sans Japanese,Liberation Sans,Ubuntu", 0, 1252},
725 {0xd429ee7a, L"STFangsong", L"WenQuanYi Micro Hei Mono", 0, 936},
726 {0xd6679c12, L"BernardMTCondensed",
727 L"KacstQurn,Droid Sans Japanese,Nimbus Sans L,URW Chancery "
728 L"L,KacstOne,Liberation Sans",
729 0, 1252},
730 {0xd8e8a027, L"LucidaSans",
731 L"Liberation Sans Narrow,Nimbus Sans L,KacstQurn,Droid Arabic Naskh,Droid "
732 L"Sans Ethiopic,DejaVu Serif Condensed,Liberation Mono,Ubuntu",
733 0, 1252},
734 {0xd9fe7761, L"HighTowerText-Reg",
735 L"Droid Sans Japanese,Ubuntu,Liberation Serif", 2, 1252},
736 {0xda7e551e, L"STSong", L"WenQuanYi Micro Hei Mono", 0, 936},
737 {0xdaa6842d, L"STZhongsong",
738 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
739 L"Sharp,WenQuanYi Micro Hei",
740 0, 936},
741 {0xdaaab93f, L"STFangsong",
742 L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen "
743 L"Hei,WenQuanYi Zen Hei Sharp",
744 0, 936},
745 {0xdaeb0713, L"STSong",
746 L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen "
747 L"Hei,WenQuanYi Zen Hei Sharp",
748 0, 936},
749 {0xdafedbef, L"STCaiyun", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
750 936},
751 {0xdb00a3d9, L"Broadway",
752 L"KacstQurn,Droid Sans Japanese,DejaVu Sans,FreeMono,Liberation Mono", 0,
753 1252},
754 {0xdb1f5ad4, L"STXinwei", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
755 936},
756 {0xdb326e7f, L"STKaiti",
757 L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen "
758 L"Hei,WenQuanYi Zen Hei Sharp",
759 0, 936},
760 {0xdb69595a, L"STHupo",
761 L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen "
762 L"Hei,WenQuanYi Zen Hei Sharp",
763 0, 936},
764 {0xdba0082c, L"STXihei",
765 L" WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen "
766 L"Hei,WenQuanYi Zen Hei Sharp",
767 0, 936},
768 {0xdbd0ab18, L"STXingkai", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
769 936},
770 {0xdc1a7db1, L"STLiti", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
771 936},
772 {0xdc33075f, L"KristenITC-Regular",
773 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu Sans "
774 L"Condensed,Ubuntu,Liberation Sans",
775 8, 1252},
776 {0xdcc7009c, L"Harrington",
777 L"KacstQurn,Droid Sans Japanese,Liberation Serif,FreeSerif,Ubuntu", 0,
778 1252},
779 {0xdd712466, L"ArialBlack",
780 L"Droid Sans Japanese,DejaVu Sans,DejaVu Serif,FreeMono", 0, 1252},
781 {0xdde87b3e, L"Impact", L"Droid Sans Japanese,DejaVu Serif", 0, 1252},
782 {0xdf69fb32, L"SnapITC",
783 L"Liberation Sans Narrow,Ubuntu Condensed,DejaVu Sans,DejaVu "
784 L"Serif,FreeMono",
785 0, 1252},
786 {0xdf8b25e8, L"CenturyGothic",
787 L"Droid Sans Japanese,Liberation Mono,Liberation Sans,Liberation Serif", 0,
788 1252},
789 {0xe0f705c0, L"KristenITC",
790 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu Sans "
791 L"Condensed,Ubuntu,Liberation Sans",
792 8, 1252},
793 {0xe1427573, L"Raavi",
794 L"Droid Arabic Naskh,Droid Sans "
795 L"Ethiopic,mry_KacstQurn,FreeSerif,Liberation Serif,Khmer OS",
796 0, 1252},
797 {0xe2cea0cb, L"Magneto",
798 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu "
799 L"Serif,DejaVu Serif Condensed,DejaVu Sans",
800 0, 1252},
801 {0xe36a9e17, L"Ravie",
802 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu "
803 L"Serif,DejaVu Sans,FreeMono",
804 0, 1252},
805 {0xe433f8e2, L"Parchment", L"Droid Sans Japanese,DejaVu Serif", 8, 1252},
806 {0xe43dff4a, L"Wingdings", L"DejaVu Serif", 4, 42},
807 {0xe4e2c405, L"MTExtra", L"DejaVu Serif", 6, 42},
808 {0xe618cc35, L"InformalRoman",
809 L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans "
810 L"Japanese,Nimbus Sans L,DejaVu Sans Condensed,Ubuntu,Liberation Sans",
811 8, 1252},
812 {0xe6c27ffc, L"Mistral", L"Droid Sans Japanese,DejaVu Serif", 8, 1252},
813 {0xe7ebf4b9, L"Courier", L"DejaVu Sans,DejaVu Sans Condensed,FreeSerif", 0,
814 1252},
815 {0xe8bc4a9d, L"MSReferenceSpecialty", L"DejaVu Serif", 0, 1252},
816 {0xe90fb013, L"TempusSansITC",
817 L"Droid Sans Japanese,Ubuntu,Liberation Serif,FreeSerif", 0, 1252},
818 {0xec637b42, L"Consolas",
819 L"DejaVu Sans Condensed,AR PL UKai CN,AR PL UKai HK,AR PL UKai "
820 L"TW,FreeSerif,FreeSans",
821 1, 1252},
822 {0xed3a683b, L"STXinwei", L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN", 0,
823 936},
824 {0xef264cd1, L"LucidaHandwriting",
825 L"Liberation Sans Narrow,Ubuntu Condensed,Nimbus Sans "
826 L"L,KacstQurn,Liberation Mono",
827 0, 1252},
828 {0xf086bca2, L"BaskervilleOldFace",
829 L"KacstQurn,Droid Sans Japanese,Liberation Serif,Ubuntu,FreeSerif", 0,
830 1252},
831 {0xf1028030, L"Mangal",
832 L"FreeSans,TSCu_Paranar,Garuda,Liberation Sans,Liberation Sans "
833 L"Narrow,Nimbus Sans L",
834 2, 1252},
835 {0xf1da7eb9, L"ShowcardGothic",
836 L"Droid Sans Japanese,DejaVu Serif Condensed,DejaVu Sans "
837 L"Condensed,Liberation Sans,Ubuntu",
838 0, 1252},
839 {0xf210f06a, L"ArialMT",
840 L"Liberation Sans,Liberation Sans Narrow,FreeSans,Nimbus Sans L,Khmer OS "
841 L"System,Khmer OS",
842 0, 1252},
843 {0xf477f16a, L"Latha",
844 L"Liberation Sans Narrow,Nimbus Sans L,Droid Arabic "
845 L"Naskh,mry_KacstQurn,FreeSerif,Nimbus Sans L",
846 0, 1252},
847 {0xf616f3dd, L"LiSu",
848 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR "
849 L"PL UMing TW MBE",
850 1, 936},
851 {0xfa479aa6, L"MicrosoftYaHei",
852 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
853 L"Sharp,WenQuanYi Micro Hei",
854 0, 936},
855 {0xfcd19697, L"BookmanOldStyle",
856 L"Droid Sans Japanese,Liberation Mono,Liberation Sans,Liberation Serif", 0,
857 1252},
858 {0xfe209a82, L"LucidaCalligraphy",
859 L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid "
860 L"Sans Japanese,DejaVu Serif,DejaVu Sans,FreeMono",
861 0, 1252},
862 {0xfef135f8, L"AdobeHeitiStd-Regular",
863 L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei "
864 L"Sharp,WenQuanYi Micro Hei",
865 0, 936},
866 };
867 #elif _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_
868 const XFA_FONTINFO g_XFAFontsMap[] = {
869 {0x01d5d33e, L"SimSun", L"STHeiti,Heiti TC,STFangsong", 0, 936},
870 {0x01e4f102, L"YouYuan", L"STHeiti,Heiti TC,STFangsong", 1, 936},
871 {0x030549dc, L"LiSu", L"STHeiti,Heiti TC,STFangsong", 1, 936},
872 {0x032edd44, L"Simhei", L"STHeiti,Heiti TC,STFangsong", 1, 936},
873 {0x03eac6fc, L"PoorRichard-Regular",
874 L"Noteworthy,Avenir Next Condensed,Impact", 2, 1252},
875 {0x03ed90e6, L"Nina", L"Microsoft Sans Serif", 0, 1252},
876 {0x077b56b3, L"KingsoftPhoneticPlain",
877 L"LastResort,Apple "
878 L"Chancery,STIXVariants,STIXSizeOneSym,STIXSizeOneSym,Apple Braille",
879 0, 1252},
880 {0x078ed524, L"MicrosoftSansSerif", L"Songti SC,Apple Symbols", 0, 1252},
881 {0x089b18a9, L"Arial",
882 L"Arial Unicode MS,Microsoft Sans Serif,Apple Symbols", 0, 1252},
883 {0x0b2cad72, L"MonotypeCorsiva", L"Arial Narrow,Impact", 8, 1252},
884 {0x0bb003e7, L"Kartika",
885 L"Arial Unicode MS,Microsoft Sans Serif,Arial Narrow,Damascus", 2, 1252},
886 {0x0bb469df, L"VinerHandITC", L"Comic Sans MS,Songti SC,STSong", 8, 1252},
887 {0x0bc1a851, L"SegoeUI", L"Apple Symbols", 0, 1252},
888 {0x0c112ebd, L"KozukaGothicPro-VIM", L"Microsoft Sans Serif,Apple Symbols",
889 0, 1252},
890 {0x0cfcb9c1, L"AdobeThai", L"Avenir Next Condensed Ultra Light", 0, 847},
891 {0x0e7de0f9, L"Playbill", L"STIXNonUnicode", 0, 1252},
892 {0x0eff47c3, L"STHupo", L"Kaiti SC,Songti SC,STHeiti", 0, 936},
893 {0x107ad374, L"Constantia", L"Arial Unicode MS,Palatino,Baskerville", 2,
894 1252},
895 {0x12194c2d, L"KunstlerScript",
896 L"Avenir Next Condensed Demi Bold,Arial Narrow", 8, 1252},
897 {0x135ef6a1, L"MinionProSmBd", L"Microsoft Sans Serif,Apple Symbols", 0,
898 1252},
899 {0x158c4049, L"Garamond", L"Impact,Arial Narrow", 2, 1252},
900 {0x160ecb24, L"STZhongsong", L"STFangsong,Songti SC", 0, 936},
901 {0x161ed07e, L"MSGothic",
902 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing "
903 L"TW,Microsoft Sans Serif,Apple Symbols",
904 1, 1252},
905 {0x171d1ed1, L"SnapITC-Regular", L"STHeiti,Arial Black", 0, 1252},
906 {0x18d1188f, L"Cambria", L"Arial Unicode MS", 2, 1252},
907 {0x18eaf350, L"ArialUnicodeMS", L"Microsoft Sans Serif,Apple Symbols", 0,
908 936},
909 {0x1a92d115, L"MingLiU", L"Heiti SC,STHeiti", 1, 1252},
910 {0x1cc217c6, L"TrebuchetMS", L"Damascus,Impact,Arial Narrow", 0, 1252},
911 {0x1d649596, L"BasemicTimes", L"Liberation Serif,Impact,Arial Narrow", 0,
912 1252},
913 {0x1e34ee60, L"BellMT",
914 L"Papyrus,STIXNonUnicode,Microsoft Sans Serif,Avenir Light", 2, 1252},
915 {0x1eb36945, L"CooperBlack",
916 L"Marion,STIXNonUnicode,Arial Rounded MT Bold,Lucida Grande", 2, 1252},
917 {0x1ef7787d, L"BatangChe",
918 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,,AR PL UMing HK,AR PL UMing TW,AR "
919 L"PL UMing TW MBE,Arial Unicode MS,Heiti TC",
920 1, 1252},
921 {0x20b3bd3a, L"BrushScriptMT",
922 L"STIXNonUnicode,Damascus,Arial Narrow,Avenir Next Condensed,Cochin", 8,
923 1252},
924 {0x220877aa, L"Candara", L"Cochin,Baskerville,Marion", 0, 1252},
925 {0x22135007, L"FreestyleScript-Regular",
926 L"STIXNonUnicode,Nadeem,Zapf Dingbats", 8, 1252},
927 {0x251059c3, L"Chiller",
928 L"Zapf Dingbats,Damascus,STIXNonUnicode,Papyrus,KufiStandardGK,Baghdad", 0,
929 1252},
930 {0x25bed6dd, L"MSReferenceSansSerif",
931 L"Tahoma,Apple Symbols,Apple LiGothic,Arial Unicode MS,Lucida "
932 L"Grande,Microsoft Sans Serif",
933 0, 1252},
934 {0x28154c81, L"Parchment-Regular", L"Microsoft Sans Serif,Apple Symbols", 8,
935 1252},
936 {0x29711eb9, L"STLiti", L"Kaiti SC,Songti SC", 0, 936},
937 {0x2b1993b4, L"Basemic", L"Impact,Arial Narrow", 0, 1252},
938 {0x2b316339, L"NiagaraSolid-Reg", L"Microsoft Sans Serif,Apple Symbols", 0,
939 1252},
940 {0x2c147529, L"FootlightMTLight",
941 L"STIXNonUnicode,Avenir Next Condensed Heavy,PT Sans,Noteworthy", 0, 1252},
942 {0x2c198928, L"HarlowSolid",
943 L"Avenir Medium,Avenir Next Medium,Arial Unicode MS", 0, 1252},
944 {0x2c6ac6b2, L"LucidaBright",
945 L"PT Sans Narrow,Papyrus,Damascus,STIXNonUnicode,Arial Rounded MT "
946 L"Bold,Comic Sans MS,Avenir Next",
947 2, 1252},
948 {0x2c9f38e2, L"KozukaMinchoPro-VIR", L"Microsoft Sans Serif,Apple Symbols",
949 0, 1252},
950 {0x2d5a47b0, L"STCaiyun", L"Kaiti SC,Songti SC", 0, 936},
951 {0x2def26bf, L"BernardMT-Condensed",
952 L"Impact,Avenir Next Condensed Demi Bold,American Typewriter", 0, 1252},
953 {0x2fd8930b, L"KozukaMinchoPr6NR", L"Microsoft Sans Serif,Apple Symbols", 0,
954 1252},
955 {0x3115525a, L"FangSong_GB2312", L"Hiragino Sans GB,STHeiti", 0, 1252},
956 {0x31327817, L"MyriadPro", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
957 {0x32244975, L"Helvetica",
958 L"Arial Narrow,Arial Unicode MS,Damascus,STIXNonUnicode", 0, 1252},
959 {0x32ac995c, L"Terminal", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
960 {0x338d648a, L"NiagaraEngraved-Reg", L"Microsoft Sans Serif,Apple Symbols",
961 0, 1252},
962 {0x33bb65f2, L"Sylfaen", L"Arial Unicode MS,Marion", 2, 1252},
963 {0x3402c30e, L"MSPMincho", L"Arial Unicode MS,Apple SD Gothic Neo", 2,
964 1252},
965 {0x3412bf31, L"SimSun-PUA", L"STHeiti,Heiti TC,STFangsong", 0, 936},
966 {0x36eb39b9, L"BerlinSansFB", L"American Typewriter,Impact", 0, 1252},
967 {0x36f42055, L"UniversATT", L"Microsoft Sans Serif", 0, 1252},
968 {0x3864c4f6, L"HighTowerText", L"STIXGeneral,.Helvetica Neue Desk UI", 2,
969 1252},
970 {0x3a257d03, L"FangSong_GB2312", L"Hiragino Sans GB,STHeiti", 0, 1252},
971 {0x3cdae668, L"FreestyleScript", L"Nadeem,Zapf Dingbats,STIXNonUnicode", 8,
972 1252},
973 {0x3d55aed7, L"Jokerman",
974 L"Papyrus,Lucida Grande,Heiti TC,American Typewriter", 0, 1252},
975 {0x3d5b4385, L"PMingLiU", L"Heiti SC,STHeiti", 2, 1252},
976 {0x3d9b7669, L"EstrangeloEdessa", L"American Typewriter,Marion", 0, 1252},
977 {0x3e532d74, L"FranklinGothicMedium", L"Impact,Arial Narrow", 0, 1252},
978 {0x3e6aa32d, L"NSimSun", L"STHeiti,STFangsong", 1, 936},
979 {0x3f6c36a8, L"Gautami",
980 L"Damascus,STIXNonUnicode,STIXGeneral,American Typewriter", 0, 1252},
981 {0x3ff32662, L"Chiller-Regular", L"Papyrus,KufiStandardGK,Baghdad", 0,
982 1252},
983 {0x409de312, L"ModernNo.20", L"Avenir Next Condensed,Impact", 2, 1252},
984 {0x41443c5e, L"Georgia", L".Helvetica Neue Desk UI,Arial Unicode MS", 2,
985 1252},
986 {0x4160ade5, L"BellGothicStdBlack", L"Microsoft Sans Serif,Apple Symbols",
987 0, 1252},
988 {0x421976c4, L"Modern-Regular", L"Impact", 2, 1252},
989 {0x422a7252, L"Stencil", L"STIXNonUnicode,Songti SC,Georgia,Baskerville", 0,
990 1252},
991 {0x42c8554f, L"Fixedsys", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
992 {0x435cb41d, L"Roman", L"Arial Narrow", 0, 1252},
993 {0x47882383, L"CourierNew", L"PCMyungjo,Osaka,Arial Unicode MS,Songti SC",
994 1, 1252},
995 {0x480a2338, L"BerlinSansFBDemi",
996 L"STIXNonUnicode,American Typewriter,Avenir Next Condensed Heavy", 0,
997 1252},
998 {0x480bf7a4, L"CourierStd", L"Courier New", 0, 1252},
999 {0x481ad6ed, L"VladimirScript",
1000 L"STIXNonUnicode,Avenir Next Condensed,Impact", 8, 1252},
1001 {0x4911577a, L"YouYuan", L"STHeiti,Heiti TC", 1, 936},
1002 {0x4a788d72, L"STXingkai", L"Kaiti SC,Songti SC", 0, 936},
1003 {0x4bf88566, L"SegoeCondensed", L"Microsoft Sans Serif,Apple Symbols", 0,
1004 1252},
1005 {0x4ccf51a4, L"BerlinSansFB-Reg",
1006 L"STIXNonUnicode,American Typewriter,Impact", 0, 1252},
1007 {0x4ea967ce, L"GulimChe", L"Arial Unicode MS,Heiti TC,STFangsong", 1, 1252},
1008 {0x4f68bd79, L"LetterGothicStd",
1009 L"Courier New,Andale Mono,Ayuthaya,PCMyungjo,Osaka", 0, 1252},
1010 {0x51a0d0e6, L"KozukaGothicPr6NM", L"Microsoft Sans Serif,Apple Symbols", 0,
1011 1252},
1012 {0x531b3dea, L"BasemicSymbol", L"Microsoft Sans Serif,Apple Symbols", 0,
1013 1252},
1014 {0x5333fd39, L"CalifornianFB-Reg",
1015 L"American Typewriter,Avenir Next Condensed,Impact", 2, 1252},
1016 {0x53561a54, L"FZYTK--GBK1-0", L"STFangsong,Songti SC,STSong", 0, 936},
1017 {0x55e0dde6, L"LucidaSansTypewriter", L"Menlo,Courier New,Andale Mono", 0,
1018 1252},
1019 {0x574d4d3d, L"AdobeArabic", L"Arial Narrow", 0, 1252},
1020 {0x5792e759, L"STKaiti", L"Songti SC,Arial Unicode MS", 0, 936},
1021 {0x5921978e, L"LucidaSansUnicode", L"Lucida Grande,Arial Unicode MS,Menlo",
1022 0, 1252},
1023 {0x594e2da4, L"Vrinda", L"Geeza Pro,Damascus,STIXGeneral,Gill Sans", 0,
1024 1252},
1025 {0x59baa9a2, L"KaiTi_GB2312", L"Hiragino Sans GB,STHeiti", 0, 1252},
1026 {0x5cfedf4f, L"BaskOldFace",
1027 L"Avenir Next Condensed Heavy,PT Sans,Avenir Next Condensed", 0, 1252},
1028 {0x5e16ac91, L"TrajanPro", L"Arial Narrow,PT Sans Narrow,Damascus", 0,
1029 1252},
1030 {0x5f97921c, L"AdobeMyungjoStdM",
1031 L"AppleMyungjo,AppleGothic,Arial Unicode MS", 0, 936},
1032 {0x5fefbfad, L"Batang", L"Arial Unicode MS,Songti SC", 2, 1252},
1033 {0x605342b9, L"DotumChe", L"Arial Unicode MS,Heiti TC", 1, 1252},
1034 {0x608c5f9a, L"KaiTi_GB2312", L"Hiragino Sans GB,STHeiti,Heiti TC", 0, 936},
1035 {0x61efd0d1, L"MaturaMTScriptCapitals",
1036 L"Kokonor,Damascus,STIXNonUnicode,STHeiti,Arial Black,Avenir Next Heavy",
1037 0, 1252},
1038 {0x626608a9, L"MVBoli",
1039 L"Apple Braille,Geeza Pro,Microsoft Sans Serif,Apple Symbols", 0, 1252},
1040 {0x630501a3, L"SmallFonts", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1041 {0x65d0e2a9, L"FZYTK--GBK1-0", L"STFangsong,Songti SC,STSong", 0, 936},
1042 {0x669f29e1, L"FZSTK--GBK1-0", L"STHeiti,Heiti TC", 0, 936},
1043 {0x673a9e5f, L"Tunga",
1044 L"Damascus,STIXNonUnicode,Avenir Next Condensed,Avenir Next Condensed "
1045 L"Ultra Light,Futura",
1046 0, 1252},
1047 {0x691aa4ce, L"NiagaraSolid", L"Microsoft Sans Serif,Apple Symbols", 0,
1048 1252},
1049 {0x696259b7, L"Corbel", L"Cochin,Baskerville,Marion", 0, 1252},
1050 {0x696ee9be, L"STXihei", L"STHeiti,Heiti TC,Songti SC,Arial Unicode MS", 0,
1051 936},
1052 {0x6c59cf69, L"Dotum", L"Arial Unicode MS,Songti SC", 0, 1252},
1053 {0x707fa561, L"Gungsuh", L"Arial Unicode MS,Heiti TC", 2, 1252},
1054 {0x71416bb2, L"ZWAdobeF",
1055 L"STIXSizeFourSym,STIXSizeThreeSym,STIXSizeTwoSym,STIXSizeOneSym", 0,
1056 1252},
1057 {0x71b41801, L"Verdana",
1058 L"Tahoma,Marion,Apple Symbols,.Helvetica Neue Desk UI,Lucida "
1059 L"Grande,Courier New",
1060 0, 1252},
1061 {0x73f25e4c, L"PalatinoLinotype", L"Palatino,Arial Unicode MS", 0, 1252},
1062 {0x73f4d19f, L"NiagaraEngraved", L"Microsoft Sans Serif,Apple Symbols", 0,
1063 1252},
1064 {0x74001694, L"MyriadProBlack", L"Palatino,Baskerville,Marion,Cochin", 0,
1065 1252},
1066 {0x74b14d8f, L"Haettenschweiler", L"Microsoft Sans Serif,Apple Symbols", 0,
1067 1252},
1068 {0x74cb44ee, L"NSimSun", L"STHeiti,Heiti TC,STFangsong", 1, 936},
1069 {0x76b4d7ff, L"Shruti",
1070 L"Damascus,STIXNonUnicode,Arial Unicode MS,American Typewriter", 0, 1252},
1071 {0x788b3533, L"Webdings", L"Microsoft Sans Serif,Apple Symbols", 6, 42},
1072 {0x797dde99, L"MSSerif", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1073 {0x7a0f9e9e, L"MSMincho",
1074 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR "
1075 L"PL UMing TW MBE,Arial Unicode MS,Apple SD Gothic Neo",
1076 1, 1252},
1077 {0x7b439caf, L"OldEnglishTextMT",
1078 L"STIXNonUnicode,Arial Unicode MS,Baskerville,Avenir Next Medium", 0,
1079 1252},
1080 {0x8213a433, L"LucidaSans-Typewriter",
1081 L"Comic Sans MS,Avenir Next,Arial Rounded MT Bold", 0, 1252},
1082 {0x82fec929, L"AdobeSongStdL", L"Heiti TC,STHeiti", 0, 936},
1083 {0x83581825, L"Modern", L"Avenir Next Condensed,Impact", 0, 1252},
1084 {0x835a2823, L"Algerian",
1085 L"STIXNonUnicode,Baskerville,Avenir Next Medium,American Typewriter", 0,
1086 1252},
1087 {0x83dab9f5, L"Script", L"Arial Narrow", 0, 1252},
1088 {0x847b56da, L"Tahoma", L"Songti SC,Apple Symbols", 0, 1252},
1089 {0x8a783cb2, L"SimSun-PUA", L"STHeiti,Heiti TC,STFangsong", 0, 1252},
1090 {0x8b5cac0e, L"Onyx", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1091 {0x8c6a499e, L"Gulim", L"Arial Unicode MS,Songti SC", 0, 1252},
1092 {0x8e0af790, L"JuiceITC", L"Nadeem,Al Bayan", 0, 1252},
1093 {0x8e8d43b2, L"Centaur", L"Avenir Next Condensed,Noteworthy,Impact", 2,
1094 1252},
1095 {0x8ee4dcca, L"BookshelfSymbol7", L"Microsoft Sans Serif,Apple Symbols", 0,
1096 1252},
1097 {0x90794800, L"BellGothicStdLight", L"Microsoft Sans Serif,Apple Symbols",
1098 0, 1252},
1099 {0x909b516a, L"Century", L"Damascus,Andale Mono,Songti SC,Arial Unicode MS",
1100 2, 1252},
1101 {0x92ae370d, L"MSOutlook", L"Microsoft Sans Serif,Apple Symbols", 4, 42},
1102 {0x93c9fbf1, L"LucidaFax",
1103 L"PT Sans Narrow,Papyrus,Kokonor,Geeza Pro,Arial Rounded MT Bold,Lucida "
1104 L"Grande,Futura",
1105 2, 1252},
1106 {0x9565085e, L"BookAntiqua", L"Palatino,Microsoft Sans Serif,Apple Symbols",
1107 2, 1252},
1108 {0x9856d95d, L"AdobeMingStdL", L"AHiragino Sans GB,Heiti TC,STHeiti", 0,
1109 949},
1110 {0x9bbadd6b, L"ColonnaMT", L"Noteworthy,Avenir Next Condensed,Impact", 0,
1111 1252},
1112 {0x9cbd16a4, L"ShowcardGothic-Reg",
1113 L"Arial Unicode MS,Georgia,American Typewriter", 0, 1252},
1114 {0x9d73008e, L"MSSansSerif", L"Songti SC,Apple Symbols", 0, 1252},
1115 {0xa0607db1, L"GungsuhChe",
1116 L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR "
1117 L"PL UMing TW MBE,Arial Unicode MS,Heiti TC,STFangsong",
1118 1, 1252},
1119 {0xa0bcf6a1, L"LatinWide", L"Zapfino,Arial Black,STHeiti", 2, 1252},
1120 {0xa1429b36, L"Symbol", L"Microsoft Sans Serif,Apple Symbols", 6, 42},
1121 {0xa1fa5abc, L"Wingdings2", L"Microsoft Sans Serif,Apple Symbols", 6, 42},
1122 {0xa1fa5abd, L"Wingdings3", L"Microsoft Sans Serif,Apple Symbols", 6, 42},
1123 {0xa427bad4, L"InformalRoman-Regular",
1124 L"STIXNonUnicode,Arial Narrow,Avenir Next Condensed Demi Bold", 8, 1252},
1125 {0xa8b92ece, L"FZSTK--GBK1-0", L"STHeiti,Heiti TC,STFangsong", 0, 936},
1126 {0xa8d83ece, L"CalifornianFB",
1127 L"American Typewriter,Avenir Next Condensed,Impact", 2, 1252},
1128 {0xaa3e082c, L"Kingsoft-Phonetic",
1129 L"STIXVariants,STIXSizeOneSym,Apple Braille", 0, 1252},
1130 {0xaa6bcabe, L"HarlowSolidItalic",
1131 L"STIXNonUnicode,Avenir Medium,Avenir Next Medium,Arial Unicode MS", 0,
1132 1252},
1133 {0xade5337c, L"MSUIGothic", L"Arial Unicode MS,Apple SD Gothic Neo", 0,
1134 1252},
1135 {0xb08dd941, L"WideLatin",
1136 L"Marion,Papyrus,Nanum Pen Script,Zapf Dingbats,Damascus,Zapfino,Arial "
1137 L"Black,STHeiti",
1138 2, 1252},
1139 {0xb12765e0, L"ITCLegacySansStdBook",
1140 L"LastResort,.Helvetica Neue Desk UI,Arial Unicode MS,Palatino", 0, 1252},
1141 {0xb207f05d, L"PoorRichard", L"Noteworthy,Avenir Next Condensed,Impact", 2,
1142 1252},
1143 {0xb3bc492f, L"JuiceITC-Regular", L"Nadeem,Al Bayan,STIXNonUnicode", 0,
1144 1252},
1145 {0xb5545399, L"Marlett", L"Microsoft Sans Serif,Apple Symbols", 4, 42},
1146 {0xb5dd1ebb, L"BritannicBold",
1147 L"Damascus,STIXNonUnicode,Avenir Next Condensed Heavy,PT Sans", 0, 1252},
1148 {0xb699c1c5, L"LucidaCalligraphy-Italic", L"STHeiti,Arial Black", 0, 1252},
1149 {0xb725d629, L"TimesNewRoman", L"Microsoft Sans Serif,Apple Symbols", 2,
1150 1252},
1151 {0xb7eaebeb, L"AdobeHeitiStdR", L"Heiti TC,STHeiti", 0, 936},
1152 {0xbd29c486, L"BerlinSansFBDemi-Bold",
1153 L"American Typewriter,Avenir Next Condensed Heavy", 0, 1252},
1154 {0xbe8a8db4, L"BookshelfSymbolSeven", L"Microsoft Sans Serif,Apple Symbols",
1155 0, 1252},
1156 {0xc16c0118, L"AdobeHebrew",
1157 L".Helvetica Neue Desk UI,Palatino,American Typewriter", 0, 1252},
1158 {0xc318b0af, L"MyriadProLight", L"Palatino,Baskerville,Marion", 0, 1252},
1159 {0xc65e5659, L"CambriaMath", L"Arial Unicode MS", 2, 1252},
1160 {0xc75c8f05, L"LucidaConsole", L"Courier New,Menlo,Andale Mono", 1, 1252},
1161 {0xca7c35d6, L"Calibri", L"Apple Symbols,HeadLineA", 0, 1252},
1162 {0xcb053f53, L"MicrosoftYaHei", L"Arial Unicode MS", 0, 936},
1163 {0xcb7190f9, L"Magneto-Bold", L"Lucida Grande", 0, 1252},
1164 {0xcca00cc5, L"System", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1165 {0xccad6f76, L"Jokerman-Regular", L"Lucida Grande", 0, 1252},
1166 {0xccc5818c, L"EuroSign", L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1167 {0xcf3d7234, L"LucidaHandwriting-Italic",
1168 L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1169 {0xcf7b8fdb, L"MinionPro",
1170 L"Bell MT,Corbel,Times New Roman,Cambria,Berlin Sans FB", 0, 1252},
1171 {0xcfe5755f, L"Simhei", L"STHeiti,Heiti TC,STFangsong", 1, 936},
1172 {0xd011f4ee, L"MSPGothic", L"Arial Unicode MS,Apple SD Gothic Neo", 0,
1173 1252},
1174 {0xd060e7ef, L"Vivaldi",
1175 L"STIXNonUnicode,Arial Unicode MS,Avenir Medium,Avenir Next Medium", 8,
1176 1252},
1177 {0xd07edec1, L"FranklinGothic-Medium", L"Impact,Arial Narrow", 0, 1252},
1178 {0xd107243f, L"SimSun", L"STHeiti,Heiti TC,STFangsong", 0, 936},
1179 {0xd1881562, L"ArialNarrow", L"PT Sans Narrow,Apple Symbols", 0, 1252},
1180 {0xd22b7dce, L"BodoniMTPosterCompressed",
1181 L"Microsoft Sans Serif,Apple Symbols", 0, 1252},
1182 {0xd22bfa60, L"ComicSansMS",
1183 L"Damascus,Georgia,.Helvetica Neue Desk UI,Lucida Grande,Arial Unicode MS",
1184 8, 1252},
1185 {0xd3bd0e35, L"Bauhaus93",
1186 L"STIXNonUnicode,Arial Unicode MS,Avenir Next,Avenir", 0, 1252},
1187 {0xd429ee7a, L"STFangsong", L"Songti SC,Arial Unicode MS", 0, 936},
1188 {0xd6679c12, L"BernardMTCondensed",
1189 L"Impact,Avenir Next Condensed Demi Bold", 0, 1252},
1190 {0xd8e8a027, L"LucidaSans",
1191 L"Arial Narrow,Khmer MN,Kokonor,Damascus,Microsoft Sans Serif,Apple "
1192 L"Symbols",
1193 0, 1252},
1194 {0xd9fe7761, L"HighTowerText-Reg",
1195 L"STIXGeneral,.Helvetica Neue Desk UI,Trebuchet MS", 2, 1252},
1196 {0xda7e551e, L"STSong", L"Arial Unicode MS", 0, 936},
1197 {0xdaa6842d, L"STZhongsong", L"STFangsong,Songti SC,STSong", 0, 936},
1198 {0xdaaab93f, L"STFangsong", L"Songti SC,Arial Unicode MS", 0, 936},
1199 {0xdaeb0713, L"STSong", L"Songti SC,Arial Unicode MS", 0, 936},
1200 {0xdafedbef, L"STCaiyun", L"Kaiti SC,Songti SC,STHeiti", 0, 936},
1201 {0xdb00a3d9, L"Broadway",
1202 L"Papyrus,STIXNonUnicode,Arial Black,Avenir Next Heavy,Heiti TC", 0, 1252},
1203 {0xdb1f5ad4, L"STXinwei", L"Kaiti SC,Songti SC,STHeiti", 0, 936},
1204 {0xdb326e7f, L"STKaiti", L"Songti SC,Arial Unicode MS", 0, 936},
1205 {0xdb69595a, L"STHupo", L"Kaiti SC,Songti SC,STHeiti", 0, 936},
1206 {0xdba0082c, L"STXihei", L"Songti SC,Arial Unicode MS", 0, 936},
1207 {0xdbd0ab18, L"STXingkai", L"Kaiti SC,Songti SC", 0, 936},
1208 {0xdc1a7db1, L"STLiti", L"Kaiti SC,Songti SC", 0, 936},
1209 {0xdc33075f, L"KristenITC-Regular",
1210 L"STIXNonUnicode,Damascus,Songti SC,STSong", 8, 1252},
1211 {0xdcc7009c, L"Harrington",
1212 L"STIXNonUnicode,Avenir Next Condensed Heavy,Noteworthy", 0, 1252},
1213 {0xdd712466, L"ArialBlack", L"Geeza Pro,Damascus,Songti SC,STSong", 0,
1214 1252},
1215 {0xdde87b3e, L"Impact", L"Arial Narrow,Marion", 0, 1252},
1216 {0xdf69fb32, L"SnapITC",
1217 L"Arial Narrow,PT Sans Narrow,Marion,STHeiti,Arial Black", 0, 1252},
1218 {0xdf8b25e8, L"CenturyGothic",
1219 L"Damascus,Andale Mono,Songti SC,Arial Unicode MS", 0, 1252},
1220 {0xe0f705c0, L"KristenITC", L"Songti SC,STSong", 8, 1252},
1221 {0xe1427573, L"Raavi",
1222 L"Damascus,STIXNonUnicode,Marion,Papyrus,Avenir Next Condensed "
1223 L"Heavy,American Typewriter",
1224 0, 1252},
1225 {0xe2cea0cb, L"Magneto",
1226 L"STIXNonUnicode,Damascus,Geeza Pro,Lucida Grande,Georgia,Heiti TC", 0,
1227 1252},
1228 {0xe36a9e17, L"Ravie", L"STHeiti,Arial Black", 0, 1252},
1229 {0xe433f8e2, L"Parchment", L"Microsoft Sans Serif,Apple Symbols", 8, 1252},
1230 {0xe43dff4a, L"Wingdings", L"Microsoft Sans Serif,Apple Symbols", 4, 42},
1231 {0xe4e2c405, L"MTExtra", L"Microsoft Sans Serif,Apple Symbols", 6, 42},
1232 {0xe618cc35, L"InformalRoman", L"Arial Narrow", 8, 1252},
1233 {0xe6c27ffc, L"Mistral", L"Apple Symbols", 8, 1252},
1234 {0xe7ebf4b9, L"Courier", L"Courier New", 0, 1252},
1235 {0xe8bc4a9d, L"MSReferenceSpecialty", L"Microsoft Sans Serif,Apple Symbols",
1236 0, 1252},
1237 {0xe90fb013, L"TempusSansITC",
1238 L"STIXNonUnicode,Microsoft Sans Serif,Avenir Light", 0, 1252},
1239 {0xec637b42, L"Consolas",
1240 L"AR PL UKai CN,AR PL UKai HK,AR PL UKai TW,AR PL UKai TW MBE,AR PL UMing "
1241 L"CN,AR PL UMing HK,Microsoft Sans Serif,Tahoma",
1242 1, 1252},
1243 {0xed3a683b, L"STXinwei", L"Kaiti SC,Songti SC,", 0, 936},
1244 {0xef264cd1, L"LucidaHandwriting",
1245 L"Arial Narrow,Avenir Next Condensed Demi Bold,Avenir Next "
1246 L"Condensed,Avenir Next Condensed Medium,STHeiti,Arial Black",
1247 0, 1252},
1248 {0xf086bca2, L"BaskervilleOldFace",
1249 L"STIXNonUnicode,Avenir Next Condensed Heavy,PT Sans", 0, 1252},
1250 {0xf1028030, L"Mangal",
1251 L"Arial Unicode MS,Microsoft Sans Serif,Arial Narrow,Tahoma", 2, 1252},
1252 {0xf1da7eb9, L"ShowcardGothic",
1253 L"Papyrus,Arial Unicode MS,Georgia,American Typewriter", 0, 1252},
1254 {0xf210f06a, L"ArialMT",
1255 L"Arial Unicode MS,Arial Narrow,STIXNonUnicode,Damascus,Avenir Next "
1256 L"Condensed Demi Bold,Avenir Next Condensed Medium,Avenir Next Condensed",
1257 0, 1252},
1258 {0xf477f16a, L"Latha",
1259 L"Arial Narrow,Damascus,STIXNonUnicode,American Typewriter", 0, 1252},
1260 {0xf616f3dd, L"LiSu", L"STHeiti,Heiti TC,STFangsong", 1, 936},
1261 {0xfa479aa6, L"MicrosoftYaHei", L"Arial Unicode MS", 0, 936},
1262 {0xfcd19697, L"BookmanOldStyle",
1263 L"Geeza Pro,Damascus,Andale Mono,Songti SC,Arial Unicode MS", 0, 1252},
1264 {0xfe209a82, L"LucidaCalligraphy",
1265 L"Kokonor,Damascus,STIXNonUnicode,STHeiti,Arial Black", 0, 1252},
1266 {0xfef135f8, L"AdobeHeitiStd-Regular", L"Heiti TC,STHeiti", 0, 936},
1267 };
1268 #elif _FXM_PLATFORM_ == _FXM_PLATFORM_ANDROID_
1269 const XFA_FONTINFO g_XFAFontsMap[] = {
1270 {0x01d5d33e, L"SimSun", L"Droid Sans Fallback", 0, 936},
1271 {0x01e4f102, L"YouYuan", L"Droid Sans Fallback", 1, 936},
1272 {0x030549dc, L"LiSu", L"Droid Sans Fallback", 1, 936},
1273 {0x032edd44, L"Simhei", L"Droid Sans Fallback", 1, 936},
1274 {0x03eac6fc, L"PoorRichard-Regular",
1275 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback,Droid Arabic "
1276 L"Naskh,Droid Sans Ethiopic",
1277 2, 1252},
1278 {0x03ed90e6, L"Nina",
1279 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1280 {0x077b56b3, L"KingsoftPhoneticPlain",
1281 L"Droid Sans Thai,Droid Sans Armenian,Droid Arabic Naskh,Droid Sans "
1282 L"Ethiopic,Droid Sans Fallback",
1283 0, 1252},
1284 {0x078ed524, L"MicrosoftSansSerif", L"Droid Sans Fallback", 0, 1252},
1285 {0x089b18a9, L"Arial", L"Droid Sans Fallback", 0, 1252},
1286 {0x0b2cad72, L"MonotypeCorsiva",
1287 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1288 {0x0bb003e7, L"Kartika",
1289 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1290 L"Mono",
1291 2, 1252},
1292 {0x0bb469df, L"VinerHandITC",
1293 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1294 {0x0bc1a851, L"SegoeUI", L"Droid Sans Fallback", 0, 1252},
1295 {0x0c112ebd, L"KozukaGothicPro-VIM",
1296 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1297 {0x0cfcb9c1, L"AdobeThai",
1298 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 847},
1299 {0x0e7de0f9, L"Playbill",
1300 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1301 L"Mono",
1302 0, 1252},
1303 {0x0eff47c3, L"STHupo", L"Droid Sans Fallback", 0, 936},
1304 {0x107ad374, L"Constantia",
1305 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1306 {0x12194c2d, L"KunstlerScript",
1307 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1308 {0x135ef6a1, L"MinionProSmBd",
1309 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1310 {0x158c4049, L"Garamond",
1311 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1312 {0x160ecb24, L"STZhongsong", L"Droid Sans Fallback", 0, 936},
1313 {0x161ed07e, L"MSGothic", L"Droid Sans Fallback", 1, 1252},
1314 {0x171d1ed1, L"SnapITC-Regular",
1315 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1316 {0x18d1188f, L"Cambria", L"Droid Sans Fallback", 2, 1252},
1317 {0x18eaf350, L"ArialUnicodeMS", L"Droid Sans Fallback", 0, 936},
1318 {0x1a92d115, L"MingLiU", L"Droid Sans Fallback", 1, 1252},
1319 {0x1cc217c6, L"TrebuchetMS",
1320 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1321 {0x1d649596, L"BasemicTimes",
1322 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1323 {0x1e34ee60, L"BellMT",
1324 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1325 {0x1eb36945, L"CooperBlack",
1326 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1327 {0x1ef7787d, L"BatangChe", L"Droid Sans Fallback", 1, 1252},
1328 {0x20b3bd3a, L"BrushScriptMT", L"Droid Arabic Naskh,Droid Sans Ethiopic", 8,
1329 1252},
1330 {0x220877aa, L"Candara",
1331 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1332 {0x22135007, L"FreestyleScript-Regular",
1333 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1334 {0x251059c3, L"Chiller",
1335 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif", 0, 1252},
1336 {0x25bed6dd, L"MSReferenceSansSerif", L"Droid Sans Fallback", 0, 1252},
1337 {0x28154c81, L"Parchment-Regular",
1338 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1339 {0x29711eb9, L"STLiti", L"Droid Sans Fallback", 0, 936},
1340 {0x2b1993b4, L"Basemic",
1341 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1342 {0x2b316339, L"NiagaraSolid-Reg",
1343 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1344 {0x2c147529, L"FootlightMTLight",
1345 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1346 {0x2c198928, L"HarlowSolid",
1347 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1348 {0x2c6ac6b2, L"LucidaBright",
1349 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto", 2, 1252},
1350 {0x2c9f38e2, L"KozukaMinchoPro-VIR",
1351 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1352 {0x2d5a47b0, L"STCaiyun", L"Droid Sans Fallback", 0, 936},
1353 {0x2def26bf, L"BernardMT-Condensed",
1354 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1355 {0x2fd8930b, L"KozukaMinchoPr6NR",
1356 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1357 {0x3115525a, L"FangSong_GB2312", L"Droid Sans Fallback", 0, 1252},
1358 {0x31327817, L"MyriadPro",
1359 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1360 {0x32244975, L"Helvetica",
1361 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto", 0, 1252},
1362 {0x32ac995c, L"Terminal",
1363 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1364 {0x338d648a, L"NiagaraEngraved-Reg",
1365 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1366 {0x33bb65f2, L"Sylfaen",
1367 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1368 {0x3402c30e, L"MSPMincho", L"Droid Sans Fallback", 2, 1252},
1369 {0x3412bf31, L"SimSun-PUA", L"Droid Sans Fallback", 0, 936},
1370 {0x36eb39b9, L"BerlinSansFB",
1371 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1372 {0x36f42055, L"UniversATT", L"Microsoft Sans Serif", 0, 1252},
1373 {0x3864c4f6, L"HighTowerText",
1374 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1375 {0x3a257d03, L"FangSong_GB2312", L"Droid Sans Fallback", 0, 1252},
1376 {0x3cdae668, L"FreestyleScript",
1377 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1378 {0x3d55aed7, L"Jokerman",
1379 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1380 {0x3d5b4385, L"PMingLiU", L"Droid Sans Fallback", 2, 1252},
1381 {0x3d9b7669, L"EstrangeloEdessa",
1382 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1383 {0x3e532d74, L"FranklinGothicMedium",
1384 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1385 {0x3e6aa32d, L"NSimSun", L"Droid Sans Fallback", 1, 936},
1386 {0x3f6c36a8, L"Gautami",
1387 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1388 L"Mono,Droid Sans Fallback",
1389 0, 1252},
1390 {0x3ff32662, L"Chiller-Regular",
1391 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1392 {0x409de312, L"ModernNo.20",
1393 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1394 {0x41443c5e, L"Georgia",
1395 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1396 {0x4160ade5, L"BellGothicStdBlack",
1397 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1398 {0x421976c4, L"Modern-Regular",
1399 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1400 {0x422a7252, L"Stencil",
1401 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1402 {0x42c8554f, L"Fixedsys",
1403 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1404 {0x435cb41d, L"Roman",
1405 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1406 {0x47882383, L"CourierNew", L"Droid Sans Fallback", 1, 1252},
1407 {0x480a2338, L"BerlinSansFBDemi",
1408 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1409 {0x480bf7a4, L"CourierStd", L"Droid Sans Fallback", 0, 1252},
1410 {0x481ad6ed, L"VladimirScript",
1411 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1412 {0x4911577a, L"YouYuan", L"Droid Sans Fallback", 1, 936},
1413 {0x4a788d72, L"STXingkai", L"Droid Sans Fallback", 0, 936},
1414 {0x4bf88566, L"SegoeCondensed",
1415 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1416 {0x4ccf51a4, L"BerlinSansFB-Reg",
1417 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1418 {0x4ea967ce, L"GulimChe", L"Droid Sans Fallback", 1, 1252},
1419 {0x4f68bd79, L"LetterGothicStd",
1420 L"Droid Sans Mono,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans "
1421 L"Mono,Droid Serif,Droid Sans Fallback",
1422 0, 1252},
1423 {0x51a0d0e6, L"KozukaGothicPr6NM",
1424 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1425 {0x531b3dea, L"BasemicSymbol",
1426 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1427 {0x5333fd39, L"CalifornianFB-Reg",
1428 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1429 {0x53561a54, L"FZYTK--GBK1-0", L"Droid Sans Fallback", 0, 936},
1430 {0x55e0dde6, L"LucidaSansTypewriter",
1431 L"Droid Sans Mono,Droid Arabic Naskh,Droid Sans Ethiopic", 0, 1252},
1432 {0x574d4d3d, L"AdobeArabic",
1433 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1434 {0x5792e759, L"STKaiti", L"Droid Sans Fallback", 0, 936},
1435 {0x5921978e, L"LucidaSansUnicode", L"Droid Sans Fallback", 0, 1252},
1436 {0x594e2da4, L"Vrinda",
1437 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1438 L"Mono",
1439 0, 1252},
1440 {0x59baa9a2, L"KaiTi_GB2312", L"Droid Sans Fallback", 0, 1252},
1441 {0x5cfedf4f, L"BaskOldFace",
1442 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1443 {0x5f97921c, L"AdobeMyungjoStdM", L"Droid Sans Fallback", 0, 936},
1444 {0x5fefbfad, L"Batang", L"Droid Sans Fallback", 2, 1252},
1445 {0x605342b9, L"DotumChe", L"Droid Sans Fallback", 1, 1252},
1446 {0x608c5f9a, L"KaiTi_GB2312", L"Droid Sans Fallback", 0, 936},
1447 {0x61efd0d1, L"MaturaMTScriptCapitals",
1448 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1449 L"Mono",
1450 0, 1252},
1451 {0x626608a9, L"MVBoli",
1452 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1453 L"Mono",
1454 0, 1252},
1455 {0x630501a3, L"SmallFonts",
1456 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1457 {0x65d0e2a9, L"FZYTK--GBK1-0", L"Droid Sans Fallback", 0, 936},
1458 {0x669f29e1, L"FZSTK--GBK1-0", L"Droid Sans Fallback", 0, 936},
1459 {0x673a9e5f, L"Tunga",
1460 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1461 L"Mono,Droid Sans Fallback",
1462 0, 1252},
1463 {0x691aa4ce, L"NiagaraSolid",
1464 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1465 {0x696259b7, L"Corbel",
1466 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1467 {0x696ee9be, L"STXihei", L"Droid Sans Fallback", 0, 936},
1468 {0x6c59cf69, L"Dotum", L"Droid Sans Fallback", 0, 1252},
1469 {0x707fa561, L"Gungsuh", L"Droid Sans Fallback", 2, 1252},
1470 {0x71416bb2, L"ZWAdobeF",
1471 L"Droid Arabic Naskh,Droid Sans Armenian,Droid Sans Ethiopic,Droid Sans "
1472 L"Georgian,Droid Sans Hebrew,Droid Sans Thai",
1473 0, 1252},
1474 {0x71b41801, L"Verdana",
1475 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1476 {0x73f25e4c, L"PalatinoLinotype", L"Droid Sans Fallback", 0, 1252},
1477 {0x73f4d19f, L"NiagaraEngraved",
1478 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1479 {0x74001694, L"MyriadProBlack", L"Book Antiqua,Constantia,Dotum,Georgia", 0,
1480 1252},
1481 {0x74b14d8f, L"Haettenschweiler",
1482 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1483 {0x74cb44ee, L"NSimSun", L"Droid Sans Fallback", 1, 936},
1484 {0x76b4d7ff, L"Shruti",
1485 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1486 L"Mono",
1487 0, 1252},
1488 {0x788b3533, L"Webdings",
1489 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 6, 42},
1490 {0x797dde99, L"MSSerif",
1491 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1492 {0x7a0f9e9e, L"MSMincho", L"Droid Sans Fallback", 1, 1252},
1493 {0x7b439caf, L"OldEnglishTextMT",
1494 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1495 {0x8213a433, L"LucidaSans-Typewriter",
1496 L"Droid Sans Mono,Droid Serif,Roboto,Droid Sans Fallback", 0, 1252},
1497 {0x82fec929, L"AdobeSongStdL", L"Droid Sans Fallback", 0, 936},
1498 {0x83581825, L"Modern",
1499 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1500 {0x835a2823, L"Algerian",
1501 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1502 {0x83dab9f5, L"Script",
1503 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1504 {0x847b56da, L"Tahoma", L"Droid Sans Fallback", 0, 1252},
1505 {0x8a783cb2, L"SimSun-PUA", L"Droid Sans Fallback", 0, 1252},
1506 {0x8b5cac0e, L"Onyx",
1507 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1508 {0x8c6a499e, L"Gulim", L"Droid Sans Fallback", 0, 1252},
1509 {0x8e0af790, L"JuiceITC",
1510 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1511 {0x8e8d43b2, L"Centaur",
1512 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1513 {0x8ee4dcca, L"BookshelfSymbol7",
1514 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1515 {0x90794800, L"BellGothicStdLight",
1516 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1517 {0x909b516a, L"Century",
1518 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1519 {0x92ae370d, L"MSOutlook",
1520 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 4, 42},
1521 {0x93c9fbf1, L"LucidaFax",
1522 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1523 L"Mono",
1524 2, 1252},
1525 {0x9565085e, L"BookAntiqua",
1526 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1527 {0x9856d95d, L"AdobeMingStdL", L"Droid Sans Fallback", 0, 949},
1528 {0x9bbadd6b, L"ColonnaMT",
1529 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1530 {0x9cbd16a4, L"ShowcardGothic-Reg",
1531 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallbac", 0, 1252},
1532 {0x9d73008e, L"MSSansSerif",
1533 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1534 {0xa0607db1, L"GungsuhChe", L"Droid Sans Fallback", 1, 1252},
1535 {0xa0bcf6a1, L"LatinWide",
1536 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1537 {0xa1429b36, L"Symbol",
1538 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 6, 42},
1539 {0xa1fa5abc, L"Wingdings2",
1540 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 6, 42},
1541 {0xa1fa5abd, L"Wingdings3",
1542 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 6, 42},
1543 {0xa427bad4, L"InformalRoman-Regular",
1544 L"Droid Arabic Naskh,Droid Sans Ethiopic", 8, 1252},
1545 {0xa8b92ece, L"FZSTK--GBK1-0", L"Droid Sans Fallback", 0, 936},
1546 {0xa8d83ece, L"CalifornianFB",
1547 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1548 {0xaa3e082c, L"Kingsoft-Phonetic",
1549 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1550 {0xaa6bcabe, L"HarlowSolidItalic",
1551 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1552 {0xade5337c, L"MSUIGothic",
1553 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1554 {0xb08dd941, L"WideLatin",
1555 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1556 L"Mono",
1557 2, 1252},
1558 {0xb207f05d, L"PoorRichard",
1559 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1560 {0xb3bc492f, L"JuiceITC-Regular",
1561 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1562 {0xb5545399, L"Marlett",
1563 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 4, 42},
1564 {0xb5dd1ebb, L"BritannicBold", L"Droid Arabic Naskh,Droid Sans Ethiopic", 0,
1565 1252},
1566 {0xb699c1c5, L"LucidaCalligraphy-Italic",
1567 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1568 {0xb725d629, L"TimesNewRoman", L"Droid Sans Fallback", 2, 1252},
1569 {0xb7eaebeb, L"AdobeHeitiStdR", L"Droid Sans Fallback", 0, 936},
1570 {0xbd29c486, L"BerlinSansFBDemi-Bold",
1571 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1572 {0xbe8a8db4, L"BookshelfSymbolSeven",
1573 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1574 {0xc16c0118, L"AdobeHebrew",
1575 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback,Droid Arabic "
1576 L"Naskh,Droid Sans Ethiopic",
1577 0, 1252},
1578 {0xc318b0af, L"MyriadProLight",
1579 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1580 {0xc65e5659, L"CambriaMath", L"Droid Sans Fallback", 2, 1252},
1581 {0xc75c8f05, L"LucidaConsole",
1582 L"Droid Sans Mono,Droid Serif,Roboto,Droid Sans Fallback", 1, 1252},
1583 {0xca7c35d6, L"Calibri", L"Droid Sans Fallback", 0, 1252},
1584 {0xcb053f53, L"MicrosoftYaHei", L"Droid Sans Fallback", 0, 936},
1585 {0xcb7190f9, L"Magneto-Bold",
1586 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1587 {0xcca00cc5, L"System",
1588 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1589 {0xccad6f76, L"Jokerman-Regular",
1590 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1591 {0xccc5818c, L"EuroSign",
1592 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1593 {0xcf3d7234, L"LucidaHandwriting-Italic",
1594 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1595 {0xcf7b8fdb, L"MinionPro",
1596 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1597 {0xcfe5755f, L"Simhei", L"Droid Sans Fallback", 1, 936},
1598 {0xd011f4ee, L"MSPGothic", L"Droid Sans Fallback", 0, 1252},
1599 {0xd060e7ef, L"Vivaldi",
1600 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1601 {0xd07edec1, L"FranklinGothic-Medium",
1602 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1603 {0xd107243f, L"SimSun", L"Droid Sans Fallback", 0, 936},
1604 {0xd1881562, L"ArialNarrow",
1605 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1606 {0xd22b7dce, L"BodoniMTPosterCompressed",
1607 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1608 {0xd22bfa60, L"ComicSansMS", L"Droid Serif,Roboto,Droid Sans Fallback", 8,
1609 1252},
1610 {0xd3bd0e35, L"Bauhaus93",
1611 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1612 {0xd429ee7a, L"STFangsong", L"Droid Sans Fallback", 0, 936},
1613 {0xd6679c12, L"BernardMTCondensed",
1614 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1615 {0xd8e8a027, L"LucidaSans",
1616 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto", 0, 1252},
1617 {0xd9fe7761, L"HighTowerText-Reg",
1618 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 2, 1252},
1619 {0xda7e551e, L"STSong", L"Droid Sans Fallback", 0, 936},
1620 {0xdaa6842d, L"STZhongsong", L"Droid Sans Fallback", 0, 936},
1621 {0xdaaab93f, L"STFangsong", L"Droid Sans Fallback", 0, 936},
1622 {0xdaeb0713, L"STSong",
1623 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 936},
1624 {0xdafedbef, L"STCaiyun", L"Droid Sans Fallback", 0, 936},
1625 {0xdb00a3d9, L"Broadway",
1626 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1627 {0xdb1f5ad4, L"STXinwei", L"Droid Sans Fallback", 0, 936},
1628 {0xdb326e7f, L"STKaiti", L"Droid Sans Fallback", 0, 936},
1629 {0xdb69595a, L"STHupo", L"Droid Sans Fallback", 0, 936},
1630 {0xdba0082c, L"STXihei", L"Droid Sans Fallback", 0, 936},
1631 {0xdbd0ab18, L"STXingkai", L"Droid Sans Fallback", 0, 936},
1632 {0xdc1a7db1, L"STLiti", L"Droid Sans Fallback", 0, 936},
1633 {0xdc33075f, L"KristenITC-Regular",
1634 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto", 8, 1252},
1635 {0xdcc7009c, L"Harrington",
1636 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1637 {0xdd712466, L"ArialBlack",
1638 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1639 {0xdde87b3e, L"Impact",
1640 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1641 {0xdf69fb32, L"SnapITC",
1642 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1643 L"Mono",
1644 0, 1252},
1645 {0xdf8b25e8, L"CenturyGothic",
1646 L"Droid Serif,Roboto,Droid Serif,Droid Sans Mono", 0, 1252},
1647 {0xe0f705c0, L"KristenITC",
1648 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto", 8, 1252},
1649 {0xe1427573, L"Raavi",
1650 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1651 L"Mono",
1652 0, 1252},
1653 {0xe2cea0cb, L"Magneto",
1654 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1655 L"Mono",
1656 0, 1252},
1657 {0xe36a9e17, L"Ravie",
1658 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1659 L"Mono",
1660 0, 1252},
1661 {0xe433f8e2, L"Parchment",
1662 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1663 {0xe43dff4a, L"Wingdings",
1664 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 4, 42},
1665 {0xe4e2c405, L"MTExtra",
1666 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 6, 42},
1667 {0xe618cc35, L"InformalRoman",
1668 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif", 8, 1252},
1669 {0xe6c27ffc, L"Mistral",
1670 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 8, 1252},
1671 {0xe7ebf4b9, L"Courier", L"Droid Sans Fallback", 0, 1252},
1672 {0xe8bc4a9d, L"MSReferenceSpecialty",
1673 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1674 {0xe90fb013, L"TempusSansITC",
1675 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1676 {0xec637b42, L"Consolas", L"Droid Sans Fallback", 1, 1252},
1677 {0xed3a683b, L"STXinwei", L"Droid Sans Fallback", 0, 936},
1678 {0xef264cd1, L"LucidaHandwriting",
1679 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1680 L"Mono",
1681 0, 1252},
1682 {0xf086bca2, L"BaskervilleOldFace",
1683 L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1684 {0xf1028030, L"Mangal",
1685 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1686 L"Mono",
1687 2, 1252},
1688 {0xf1da7eb9, L"ShowcardGothic",
1689 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallbac", 0, 1252},
1690 {0xf210f06a, L"ArialMT",
1691 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif", 0, 1252},
1692 {0xf477f16a, L"Latha",
1693 L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans "
1694 L"Mono",
1695 0, 1252},
1696 {0xf616f3dd, L"LiSu", L"Droid Sans Fallback", 1, 936},
1697 {0xfa479aa6, L"MicrosoftYaHei", L"Droid Sans Fallback", 0, 936},
1698 {0xfcd19697, L"BookmanOldStyle",
1699 L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback", 0, 1252},
1700 {0xfe209a82, L"LucidaCalligraphy",
1701 L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans "
1702 L"Mono",
1703 0, 1252},
1704 {0xfef135f8, L"AdobeHeitiStd-Regular", L"Droid Sans Fallback", 0, 936},
1705 };
1706 #endif
1707
XFA_LocalFontNameToEnglishName(const CFX_WideStringC & wsLocalName)1708 CFX_WideString XFA_LocalFontNameToEnglishName(
1709 const CFX_WideStringC& wsLocalName) {
1710 uint32_t dwLocalNameHash = FX_HashCode_GetW(wsLocalName, true);
1711 const XFA_FONTINFO* pEnd = g_XFAFontsMap + FX_ArraySize(g_XFAFontsMap);
1712 const XFA_FONTINFO* pFontInfo =
1713 std::lower_bound(g_XFAFontsMap, pEnd, dwLocalNameHash,
1714 [](const XFA_FONTINFO& entry, uint32_t hash) {
1715 return entry.dwFontNameHash < hash;
1716 });
1717 if (pFontInfo < pEnd && pFontInfo->dwFontNameHash == dwLocalNameHash)
1718 return pFontInfo->pPsName;
1719 return CFX_WideString(wsLocalName);
1720 }
1721
XFA_GetFontINFOByFontName(const CFX_WideStringC & wsFontName)1722 const XFA_FONTINFO* XFA_GetFontINFOByFontName(
1723 const CFX_WideStringC& wsFontName) {
1724 CFX_WideString wsFontNameTemp(wsFontName);
1725 wsFontNameTemp.Remove(L' ');
1726 uint32_t dwCurFontNameHash =
1727 FX_HashCode_GetW(wsFontNameTemp.AsStringC(), true);
1728 const XFA_FONTINFO* pEnd = g_XFAFontsMap + FX_ArraySize(g_XFAFontsMap);
1729 const XFA_FONTINFO* pFontInfo =
1730 std::lower_bound(g_XFAFontsMap, pEnd, dwCurFontNameHash,
1731 [](const XFA_FONTINFO& entry, uint32_t hash) {
1732 return entry.dwFontNameHash < hash;
1733 });
1734 if (pFontInfo < pEnd && pFontInfo->dwFontNameHash == dwCurFontNameHash)
1735 return pFontInfo;
1736 return nullptr;
1737 }
1738
1739 } // namespace
1740
CXFA_DefFontMgr()1741 CXFA_DefFontMgr::CXFA_DefFontMgr() {}
1742
~CXFA_DefFontMgr()1743 CXFA_DefFontMgr::~CXFA_DefFontMgr() {}
1744
GetFont(CXFA_FFDoc * hDoc,const CFX_WideStringC & wsFontFamily,uint32_t dwFontStyles,uint16_t wCodePage)1745 CFX_RetainPtr<CFGAS_GEFont> CXFA_DefFontMgr::GetFont(
1746 CXFA_FFDoc* hDoc,
1747 const CFX_WideStringC& wsFontFamily,
1748 uint32_t dwFontStyles,
1749 uint16_t wCodePage) {
1750 CFX_WideString wsFontName(wsFontFamily);
1751 CFGAS_FontMgr* pFDEFontMgr = hDoc->GetApp()->GetFDEFontMgr();
1752 CFX_RetainPtr<CFGAS_GEFont> pFont =
1753 pFDEFontMgr->LoadFont(wsFontName.c_str(), dwFontStyles, wCodePage);
1754 if (!pFont) {
1755 const XFA_FONTINFO* pCurFont =
1756 XFA_GetFontINFOByFontName(wsFontName.AsStringC());
1757 if (pCurFont && pCurFont->pReplaceFont) {
1758 uint32_t dwStyle = 0;
1759 if (dwFontStyles & FX_FONTSTYLE_Bold) {
1760 dwStyle |= FX_FONTSTYLE_Bold;
1761 }
1762 if (dwFontStyles & FX_FONTSTYLE_Italic) {
1763 dwStyle |= FX_FONTSTYLE_Italic;
1764 }
1765 const FX_WCHAR* pReplace = pCurFont->pReplaceFont;
1766 int32_t iLength = FXSYS_wcslen(pReplace);
1767 while (iLength > 0) {
1768 const FX_WCHAR* pNameText = pReplace;
1769 while (*pNameText != L',' && iLength > 0) {
1770 pNameText++;
1771 iLength--;
1772 }
1773 CFX_WideString wsReplace =
1774 CFX_WideString(pReplace, pNameText - pReplace);
1775 pFont = pFDEFontMgr->LoadFont(wsReplace.c_str(), dwStyle, wCodePage);
1776 if (pFont)
1777 break;
1778
1779 iLength--;
1780 pNameText++;
1781 pReplace = pNameText;
1782 }
1783 }
1784 }
1785 if (pFont)
1786 m_CacheFonts.push_back(pFont);
1787 return pFont;
1788 }
1789
GetDefaultFont(CXFA_FFDoc * hDoc,const CFX_WideStringC & wsFontFamily,uint32_t dwFontStyles,uint16_t wCodePage)1790 CFX_RetainPtr<CFGAS_GEFont> CXFA_DefFontMgr::GetDefaultFont(
1791 CXFA_FFDoc* hDoc,
1792 const CFX_WideStringC& wsFontFamily,
1793 uint32_t dwFontStyles,
1794 uint16_t wCodePage) {
1795 CFGAS_FontMgr* pFDEFontMgr = hDoc->GetApp()->GetFDEFontMgr();
1796 CFX_RetainPtr<CFGAS_GEFont> pFont =
1797 pFDEFontMgr->LoadFont(L"Arial Narrow", dwFontStyles, wCodePage);
1798 if (!pFont) {
1799 pFont = pFDEFontMgr->LoadFont(static_cast<const FX_WCHAR*>(nullptr),
1800 dwFontStyles, wCodePage);
1801 }
1802 if (pFont)
1803 m_CacheFonts.push_back(pFont);
1804 return pFont;
1805 }
1806
CXFA_PDFFontMgr(CXFA_FFDoc * pDoc)1807 CXFA_PDFFontMgr::CXFA_PDFFontMgr(CXFA_FFDoc* pDoc) : m_pDoc(pDoc) {}
1808
~CXFA_PDFFontMgr()1809 CXFA_PDFFontMgr::~CXFA_PDFFontMgr() {}
1810
FindFont(const CFX_ByteString & strPsName,bool bBold,bool bItalic,CPDF_Font ** pDstPDFFont,bool bStrictMatch)1811 CFX_RetainPtr<CFGAS_GEFont> CXFA_PDFFontMgr::FindFont(
1812 const CFX_ByteString& strPsName,
1813 bool bBold,
1814 bool bItalic,
1815 CPDF_Font** pDstPDFFont,
1816 bool bStrictMatch) {
1817 CPDF_Document* pDoc = m_pDoc->GetPDFDoc();
1818 if (!pDoc)
1819 return nullptr;
1820
1821 CPDF_Dictionary* pFontSetDict =
1822 pDoc->GetRoot()->GetDictFor("AcroForm")->GetDictFor("DR");
1823 if (!pFontSetDict)
1824 return nullptr;
1825
1826 pFontSetDict = pFontSetDict->GetDictFor("Font");
1827 if (!pFontSetDict)
1828 return nullptr;
1829
1830 CFX_ByteString name = strPsName;
1831 name.Remove(' ');
1832 CFGAS_FontMgr* pFDEFontMgr = m_pDoc->GetApp()->GetFDEFontMgr();
1833 for (const auto& it : *pFontSetDict) {
1834 const CFX_ByteString& key = it.first;
1835 CPDF_Object* pObj = it.second.get();
1836 if (!PsNameMatchDRFontName(name.AsStringC(), bBold, bItalic, key,
1837 bStrictMatch)) {
1838 continue;
1839 }
1840 CPDF_Dictionary* pFontDict = ToDictionary(pObj->GetDirect());
1841 if (!pFontDict || pFontDict->GetStringFor("Type") != "Font") {
1842 return nullptr;
1843 }
1844 CPDF_Font* pPDFFont = pDoc->LoadFont(pFontDict);
1845 if (!pPDFFont) {
1846 return nullptr;
1847 }
1848 if (!pPDFFont->IsEmbedded()) {
1849 *pDstPDFFont = pPDFFont;
1850 return nullptr;
1851 }
1852 return CFGAS_GEFont::LoadFont(&pPDFFont->m_Font, pFDEFontMgr);
1853 }
1854 return nullptr;
1855 }
1856
GetFont(const CFX_WideStringC & wsFontFamily,uint32_t dwFontStyles,CPDF_Font ** pPDFFont,bool bStrictMatch)1857 CFX_RetainPtr<CFGAS_GEFont> CXFA_PDFFontMgr::GetFont(
1858 const CFX_WideStringC& wsFontFamily,
1859 uint32_t dwFontStyles,
1860 CPDF_Font** pPDFFont,
1861 bool bStrictMatch) {
1862 uint32_t dwHashCode = FX_HashCode_GetW(wsFontFamily, false);
1863 CFX_ByteString strKey;
1864 strKey.Format("%u%u", dwHashCode, dwFontStyles);
1865 auto it = m_FontMap.find(strKey);
1866 if (it != m_FontMap.end())
1867 return it->second;
1868 CFX_ByteString bsPsName =
1869 CFX_ByteString::FromUnicode(CFX_WideString(wsFontFamily));
1870 bool bBold = (dwFontStyles & FX_FONTSTYLE_Bold) == FX_FONTSTYLE_Bold;
1871 bool bItalic = (dwFontStyles & FX_FONTSTYLE_Italic) == FX_FONTSTYLE_Italic;
1872 CFX_ByteString strFontName = PsNameToFontName(bsPsName, bBold, bItalic);
1873 CFX_RetainPtr<CFGAS_GEFont> pFont =
1874 FindFont(strFontName, bBold, bItalic, pPDFFont, bStrictMatch);
1875 if (pFont)
1876 m_FontMap[strKey] = pFont;
1877 return pFont;
1878 }
1879
PsNameToFontName(const CFX_ByteString & strPsName,bool bBold,bool bItalic)1880 CFX_ByteString CXFA_PDFFontMgr::PsNameToFontName(
1881 const CFX_ByteString& strPsName,
1882 bool bBold,
1883 bool bItalic) {
1884 for (size_t i = 0; i < FX_ArraySize(g_XFAPDFFontName); ++i) {
1885 if (strPsName == g_XFAPDFFontName[i][0]) {
1886 size_t index = 1;
1887 if (bBold)
1888 ++index;
1889 if (bItalic)
1890 index += 2;
1891 return g_XFAPDFFontName[i][index];
1892 }
1893 }
1894 return strPsName;
1895 }
1896
PsNameMatchDRFontName(const CFX_ByteStringC & bsPsName,bool bBold,bool bItalic,const CFX_ByteString & bsDRFontName,bool bStrictMatch)1897 bool CXFA_PDFFontMgr::PsNameMatchDRFontName(const CFX_ByteStringC& bsPsName,
1898 bool bBold,
1899 bool bItalic,
1900 const CFX_ByteString& bsDRFontName,
1901 bool bStrictMatch) {
1902 CFX_ByteString bsDRName = bsDRFontName;
1903 bsDRName.Remove('-');
1904 int32_t iPsLen = bsPsName.GetLength();
1905 int32_t nIndex = bsDRName.Find(bsPsName);
1906 if (nIndex != -1 && !bStrictMatch)
1907 return true;
1908
1909 if (nIndex != 0)
1910 return false;
1911
1912 int32_t iDifferLength = bsDRName.GetLength() - iPsLen;
1913 if (iDifferLength > 1 || (bBold || bItalic)) {
1914 int32_t iBoldIndex = bsDRName.Find("Bold");
1915 bool bBoldFont = iBoldIndex > 0;
1916 if (bBold != bBoldFont)
1917 return false;
1918
1919 if (bBoldFont) {
1920 iDifferLength =
1921 std::min(iDifferLength - 4, bsDRName.GetLength() - iBoldIndex - 4);
1922 }
1923 bool bItalicFont = true;
1924 if (bsDRName.Find("Italic") > 0) {
1925 iDifferLength -= 6;
1926 } else if (bsDRName.Find("It") > 0) {
1927 iDifferLength -= 2;
1928 } else if (bsDRName.Find("Oblique") > 0) {
1929 iDifferLength -= 7;
1930 } else {
1931 bItalicFont = false;
1932 }
1933 if (bItalic != bItalicFont)
1934 return false;
1935
1936 if (iDifferLength > 1) {
1937 CFX_ByteString bsDRTailer = bsDRName.Right(iDifferLength);
1938 if (bsDRTailer == "MT" || bsDRTailer == "PSMT" ||
1939 bsDRTailer == "Regular" || bsDRTailer == "Reg") {
1940 return true;
1941 }
1942 if (bBoldFont || bItalicFont)
1943 return false;
1944
1945 bool bMatch = false;
1946 switch (bsPsName.GetAt(iPsLen - 1)) {
1947 case 'L': {
1948 if (bsDRName.Right(5) == "Light") {
1949 bMatch = true;
1950 }
1951 } break;
1952 case 'R': {
1953 if (bsDRName.Right(7) == "Regular" || bsDRName.Right(3) == "Reg") {
1954 bMatch = true;
1955 }
1956 } break;
1957 case 'M': {
1958 if (bsDRName.Right(5) == "Medium") {
1959 bMatch = true;
1960 }
1961 } break;
1962 default:
1963 break;
1964 }
1965 return bMatch;
1966 }
1967 }
1968 return true;
1969 }
1970
GetCharWidth(const CFX_RetainPtr<CFGAS_GEFont> & pFont,FX_WCHAR wUnicode,bool bCharCode,int32_t * pWidth)1971 bool CXFA_PDFFontMgr::GetCharWidth(const CFX_RetainPtr<CFGAS_GEFont>& pFont,
1972 FX_WCHAR wUnicode,
1973 bool bCharCode,
1974 int32_t* pWidth) {
1975 if (wUnicode != 0x20 || bCharCode)
1976 return false;
1977
1978 auto it = m_FDE2PDFFont.find(pFont);
1979 if (it == m_FDE2PDFFont.end())
1980 return false;
1981
1982 CPDF_Font* pPDFFont = it->second;
1983 *pWidth = pPDFFont->GetCharWidthF(pPDFFont->CharCodeFromUnicode(wUnicode));
1984 return true;
1985 }
1986
SetFont(const CFX_RetainPtr<CFGAS_GEFont> & pFont,CPDF_Font * pPDFFont)1987 void CXFA_PDFFontMgr::SetFont(const CFX_RetainPtr<CFGAS_GEFont>& pFont,
1988 CPDF_Font* pPDFFont) {
1989 m_FDE2PDFFont[pFont] = pPDFFont;
1990 }
1991
CXFA_FontMgr()1992 CXFA_FontMgr::CXFA_FontMgr() {}
1993
~CXFA_FontMgr()1994 CXFA_FontMgr::~CXFA_FontMgr() {}
1995
GetFont(CXFA_FFDoc * hDoc,const CFX_WideStringC & wsFontFamily,uint32_t dwFontStyles,uint16_t wCodePage)1996 CFX_RetainPtr<CFGAS_GEFont> CXFA_FontMgr::GetFont(
1997 CXFA_FFDoc* hDoc,
1998 const CFX_WideStringC& wsFontFamily,
1999 uint32_t dwFontStyles,
2000 uint16_t wCodePage) {
2001 uint32_t dwHash = FX_HashCode_GetW(wsFontFamily, false);
2002 CFX_ByteString bsKey;
2003 bsKey.Format("%u%u%u", dwHash, dwFontStyles, wCodePage);
2004 auto iter = m_FontMap.find(bsKey);
2005 if (iter != m_FontMap.end())
2006 return iter->second;
2007
2008 CFX_WideString wsEnglishName = XFA_LocalFontNameToEnglishName(wsFontFamily);
2009 auto it = m_PDFFontMgrMap.find(hDoc);
2010 CXFA_PDFFontMgr* pMgr =
2011 it != m_PDFFontMgrMap.end() ? it->second.get() : nullptr;
2012 CPDF_Font* pPDFFont = nullptr;
2013 CFX_RetainPtr<CFGAS_GEFont> pFont;
2014 if (pMgr) {
2015 pFont =
2016 pMgr->GetFont(wsEnglishName.AsStringC(), dwFontStyles, &pPDFFont, true);
2017 if (pFont)
2018 return pFont;
2019 }
2020 if (!pFont && m_pDefFontMgr)
2021 pFont = m_pDefFontMgr->GetFont(hDoc, wsFontFamily, dwFontStyles, wCodePage);
2022
2023 if (!pFont && pMgr) {
2024 pPDFFont = nullptr;
2025 pFont = pMgr->GetFont(wsEnglishName.AsStringC(), dwFontStyles, &pPDFFont,
2026 false);
2027 if (pFont)
2028 return pFont;
2029 }
2030 if (!pFont && m_pDefFontMgr) {
2031 pFont = m_pDefFontMgr->GetDefaultFont(hDoc, wsFontFamily, dwFontStyles,
2032 wCodePage);
2033 }
2034 if (pFont) {
2035 if (pPDFFont) {
2036 pMgr->SetFont(pFont, pPDFFont);
2037 pFont->SetFontProvider(pMgr);
2038 }
2039 m_FontMap[bsKey] = pFont;
2040 }
2041 return pFont;
2042 }
2043
LoadDocFonts(CXFA_FFDoc * hDoc)2044 void CXFA_FontMgr::LoadDocFonts(CXFA_FFDoc* hDoc) {
2045 if (!m_PDFFontMgrMap[hDoc])
2046 m_PDFFontMgrMap[hDoc] = pdfium::MakeUnique<CXFA_PDFFontMgr>(hDoc);
2047 }
2048
ReleaseDocFonts(CXFA_FFDoc * hDoc)2049 void CXFA_FontMgr::ReleaseDocFonts(CXFA_FFDoc* hDoc) {
2050 m_PDFFontMgrMap.erase(hDoc);
2051 }
2052
SetDefFontMgr(std::unique_ptr<CXFA_DefFontMgr> pFontMgr)2053 void CXFA_FontMgr::SetDefFontMgr(std::unique_ptr<CXFA_DefFontMgr> pFontMgr) {
2054 m_pDefFontMgr = std::move(pFontMgr);
2055 }
2056