Merge to XFA: Use stdint.h types throughout PDFium.
[pdfium.git] / xfa / src / fxfa / src / app / xfa_fontmgr.cpp
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4 \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #include "../../../foxitlib.h"\r
8 #include "../common/xfa_common.h"\r
9 #include "xfa_fontmgr.h"\r
10 #include "xfa_ffdoc.h"\r
11 #include "xfa_ffConfigAcc.h"\r
12 #include "xfa_ffapp.h"\r
13 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_\r
14 static const XFA_FONTINFO g_XFAFontsMap[] = {\r
15     {0x01d5d33e,        L"SimSun",      L"Arial",       0,      936},\r
16     {0x01e4f102,        L"YouYuan",     L"Arial",       1,      936},\r
17     {0x030549dc,        L"LiSu",        L"Arial",       1,      936},\r
18     {0x032edd44,        L"Simhei",      L"Arial",       1,      936},\r
19     {0x03eac6fc,        L"PoorRichard-Regular", L"Arial",       2,      1252},\r
20     {0x03ed90e6,        L"Nina",        L"Arial",       0,      1252},\r
21     {0x077b56b3,        L"KingsoftPhoneticPlain",       L"Arial",       0,      1252},\r
22     {0x078ed524,        L"MicrosoftSansSerif",  L"Arial",       0,      1252},\r
23     {0x089b18a9,        L"Arial",       L"Arial",       0,      1252},\r
24     {0x0b2cad72,        L"MonotypeCorsiva",     L"Arial",       8,      1252},\r
25     {0x0bb003e7,        L"Kartika",     L"Arial",       2,      1252},\r
26     {0x0bb469df,        L"VinerHandITC",        L"Arial",       8,      1252},\r
27     {0x0bc1a851,        L"SegoeUI",     L"Arial",       0,      1252},\r
28     {0x0c112ebd,        L"KozukaGothicPro-VIM", L"Arial",       0,      1252},\r
29     {0x0cfcb9c1,        L"AdobeThai",   L"Kokila,Arial Narrow", 0,      847},\r
30     {0x0e7de0f9,        L"Playbill",    L"Arial",       0,      1252},\r
31     {0x0eff47c3,        L"STHupo",      L"Arial",       0,      936},\r
32     {0x107ad374,        L"Constantia",  L"Arial",       2,      1252},\r
33     {0x12194c2d,        L"KunstlerScript",      L"Arial",       8,      1252},\r
34     {0x135ef6a1,        L"MinionProSmBd",       L"Bell MT,Corbel,Times New Roman,Cambria,Berlin Sans FB",       0,      1252},\r
35     {0x158c4049,        L"Garamond",    L"Arial",       2,      1252},\r
36     {0x160ecb24,        L"STZhongsong", L"Arial",       0,      936},\r
37     {0x161ed07e,        L"MSGothic",    L"Arial",       1,      1252},\r
38     {0x171d1ed1,        L"SnapITC-Regular",     L"Arial",       0,      1252},\r
39     {0x18d1188f,        L"Cambria",     L"Arial",       2,      1252},\r
40     {0x18eaf350,        L"ArialUnicodeMS",      L"Arial",       0,      936},\r
41     {0x1a92d115,        L"MingLiU",     L"Arial",       1,      1252},\r
42     {0x1cc217c6,        L"TrebuchetMS", L"Arial",       0,      1252},\r
43     {0x1d649596,        L"BasemicTimes",        L"Arial",       0,      1252},\r
44     {0x1e34ee60,        L"BellMT",      L"Arial",       2,      1252},\r
45     {0x1eb36945,        L"CooperBlack", L"Arial",       2,      1252},\r
46     {0x1ef7787d,        L"BatangChe",   L"Arial",       1,      1252},\r
47     {0x20b3bd3a,        L"BrushScriptMT",       L"Arial",       8,      1252},\r
48     {0x220877aa,        L"Candara",     L"Arial",       0,      1252},\r
49     {0x22135007,        L"FreestyleScript-Regular",     L"Arial",       8,      1252},\r
50     {0x251059c3,        L"Chiller",     L"Arial",       0,      1252},\r
51     {0x25bed6dd,        L"MSReferenceSansSerif",        L"Arial",       0,      1252},\r
52     {0x28154c81,        L"Parchment-Regular",   L"Arial",       8,      1252},\r
53     {0x29711eb9,        L"STLiti",      L"Arial",       0,      936},\r
54     {0x2b1993b4,        L"Basemic",     L"Arial",       0,      1252},\r
55     {0x2b316339,        L"NiagaraSolid-Reg",    L"Arial",       0,      1252},\r
56     {0x2c147529,        L"FootlightMTLight",    L"Arial",       0,      1252},\r
57     {0x2c198928,        L"HarlowSolid", L"Arial",       0,      1252},\r
58     {0x2c6ac6b2,        L"LucidaBright",        L"Arial",       2,      1252},\r
59     {0x2c9f38e2,        L"KozukaMinchoPro-VIR", L"Arial",       0,      1252},\r
60     {0x2d5a47b0,        L"STCaiyun",    L"Arial",       0,      936},\r
61     {0x2def26bf,        L"BernardMT-Condensed", L"Arial",       0,      1252},\r
62     {0x2fd8930b,        L"KozukaMinchoPr6NR",   L"Arial",       0,      1252},\r
63     {0x3115525a,        L"FangSong_GB2312",     L"Arial",       0,      1252},\r
64     {0x31327817,        L"MyriadPro",   L"Calibri,Corbel,Candara,Cambria Math,Franklin Gothic Medium,Arial Narrow,Times New Roman",     0,      1252},\r
65     {0x32244975,    L"Helvetica", L"Arial",      0,   1252},\r
66     {0x32ac995c,        L"Terminal",    L"Arial",       0,      1252},\r
67     {0x338d648a,        L"NiagaraEngraved-Reg", L"Arial",       0,      1252},\r
68     {0x33bb65f2,        L"Sylfaen",     L"Arial",       2,      1252},\r
69     {0x3402c30e,        L"MSPMincho",   L"Arial",       2,      1252},\r
70     {0x3412bf31,        L"SimSun-PUA",  L"Arial",       0,      936},\r
71     {0x36eb39b9,        L"BerlinSansFB",        L"Arial",       0,      1252},\r
72     {0x36f42055,        L"UniversATT",  L"Microsoft Sans Serif",        0,      1252},\r
73     {0x3864c4f6,        L"HighTowerText",       L"Arial",       2,      1252},\r
74     {0x3a257d03,        L"FangSong_GB2312",     L"Arial",       0,      1252},\r
75     {0x3cdae668,        L"FreestyleScript",     L"Arial",       8,      1252},\r
76     {0x3d55aed7,        L"Jokerman",    L"Arial",       0,      1252},\r
77     {0x3d5b4385,        L"PMingLiU",    L"Arial",       2,      1252},\r
78     {0x3d9b7669,        L"EstrangeloEdessa",    L"Arial",       0,      1252},\r
79     {0x3e532d74,        L"FranklinGothicMedium",        L"Arial",       0,      1252},\r
80     {0x3e6aa32d,        L"NSimSun",     L"Arial",       1,      936},\r
81     {0x3f6c36a8,        L"Gautami",     L"Arial",       0,      1252},\r
82     {0x3ff32662,        L"Chiller-Regular",     L"Arial",       0,      1252},\r
83     {0x409de312,        L"ModernNo.20", L"Arial",       2,      1252},\r
84     {0x41443c5e,        L"Georgia",     L"Arial",       2,      1252},\r
85     {0x4160ade5,        L"BellGothicStdBlack",  L"Arial,Arial Unicode MS,Book Antiqua,Dotum,Georgia",   0,      1252},\r
86     {0x421976c4,        L"Modern-Regular",      L"Arial",       2,      1252},\r
87     {0x422a7252,        L"Stencil",     L"Arial",       0,      1252},\r
88     {0x42c8554f,        L"Fixedsys",    L"Arial",       0,      1252},\r
89     {0x435cb41d,        L"Roman",       L"Arial",       0,      1252},\r
90     {0x47882383,        L"CourierNew",  L"Arial",       1,      1252},\r
91     {0x480a2338,        L"BerlinSansFBDemi",    L"Arial",       0,      1252},\r
92     {0x480bf7a4,        L"CourierStd",  L"Courier New,Verdana", 0,      1252},\r
93     {0x481ad6ed,        L"VladimirScript",      L"Arial",       8,      1252},\r
94     {0x4911577a,        L"YouYuan",     L"Arial",       1,      936},\r
95     {0x4a788d72,        L"STXingkai",   L"Arial",       0,      936},\r
96     {0x4bf88566,        L"SegoeCondensed",      L"Arial",       0,      1252},\r
97     {0x4ccf51a4,        L"BerlinSansFB-Reg",    L"Arial",       0,      1252},\r
98     {0x4ea967ce,        L"GulimChe",    L"Arial",       1,      1252},\r
99     {0x4f68bd79,        L"LetterGothicStd",     L"Courier New,Verdana", 0,      1252},\r
100     {0x51a0d0e6,        L"KozukaGothicPr6NM",   L"Arial",       0,      1252},\r
101     {0x531b3dea,        L"BasemicSymbol",       L"Arial",       0,      1252},\r
102     {0x5333fd39,        L"CalifornianFB-Reg",   L"Arial",       2,      1252},\r
103     {0x53561a54,        L"FZYTK--GBK1-0",       L"Arial",       0,      936},\r
104     {0x55e0dde6,        L"LucidaSansTypewriter",        L"Arial",       0,      1252},\r
105     {0x574d4d3d,        L"AdobeArabic", L"Arial Narrow",        0,      1252},\r
106     {0x5792e759,        L"STKaiti",     L"Arial",       0,      936},\r
107     {0x5921978e,        L"LucidaSansUnicode",   L"Arial",       0,      1252},\r
108     {0x594e2da4,        L"Vrinda",      L"Arial",       0,      1252},\r
109     {0x59baa9a2,        L"KaiTi_GB2312",        L"Arial",       0,      1252},\r
110     {0x5cfedf4f,        L"BaskOldFace", L"Arial",       0,      1252},\r
111     {0x5f97921c,        L"AdobeMyungjoStdM",    L"Batang,Bookman Old Style,Consolas,STZhongsong",       0,      936},\r
112     {0x5fefbfad,        L"Batang",      L"Arial",       2,      1252},\r
113     {0x605342b9,        L"DotumChe",    L"Arial",       1,      1252},\r
114     {0x608c5f9a,        L"KaiTi_GB2312",        L"Arial",       0,      936},\r
115     {0x61efd0d1,        L"MaturaMTScriptCapitals",      L"Arial",       0,      1252},\r
116     {0x626608a9,        L"MVBoli",      L"Arial",       0,      1252},\r
117     {0x630501a3,        L"SmallFonts",  L"Arial",       0,      1252},\r
118     {0x65d0e2a9,        L"FZYTK--GBK1-0",       L"Arial",       0,      936},\r
119     {0x669f29e1,        L"FZSTK--GBK1-0",       L"Arial",       0,      936},\r
120     {0x673a9e5f,        L"Tunga",       L"Arial",       0,      1252},\r
121     {0x691aa4ce,        L"NiagaraSolid",        L"Arial",       0,      1252},\r
122     {0x696259b7,        L"Corbel",      L"Arial",       0,      1252},\r
123     {0x696ee9be,        L"STXihei",     L"Arial",       0,      936},\r
124     {0x6c59cf69,        L"Dotum",       L"Arial",       0,      1252},\r
125     {0x707fa561,        L"Gungsuh",     L"Arial",       2,      1252},\r
126     {0x71416bb2,        L"ZWAdobeF",    L"Arial",       0,      1252},\r
127     {0x71b41801,        L"Verdana",     L"Arial",       0,      1252},\r
128     {0x73f25e4c,        L"PalatinoLinotype",    L"Arial",       0,      1252},\r
129     {0x73f4d19f,        L"NiagaraEngraved",     L"Arial",       0,      1252},\r
130     {0x74001694,        L"MyriadProBlack",      L"Book Antiqua,Constantia,Dotum,Georgia",       0,      1252},\r
131     {0x74b14d8f,        L"Haettenschweiler",    L"Arial",       0,      1252},\r
132     {0x74cb44ee,        L"NSimSun",     L"Arial",       1,      936},\r
133     {0x76b4d7ff,        L"Shruti",      L"Arial",       0,      1252},\r
134     {0x788b3533,        L"Webdings",    L"Arial",       6,      42},\r
135     {0x797dde99,        L"MSSerif",     L"Arial",       0,      1252},\r
136     {0x7a0f9e9e,        L"MSMincho",    L"Arial",       1,      1252},\r
137     {0x7b439caf,        L"OldEnglishTextMT",    L"Arial",       0,      1252},\r
138     {0x8213a433,        L"LucidaSans-Typewriter",       L"Arial",       0,      1252},\r
139     {0x82fec929,        L"AdobeSongStdL",       L"Centaur,Calibri,STSong,Bell MT,Garamond,Times New Roman",     0,      936},\r
140     {0x83581825,        L"Modern",      L"Arial",       0,      1252},\r
141     {0x835a2823,        L"Algerian",    L"Arial",       0,      1252},\r
142     {0x83dab9f5,        L"Script",      L"Arial",       0,      1252},\r
143     {0x847b56da,        L"Tahoma",      L"Arial",       0,      1252},\r
144     {0x8a783cb2,        L"SimSun-PUA",  L"Arial",       0,      1252},\r
145     {0x8b5cac0e,        L"Onyx",        L"Arial",       0,      1252},\r
146     {0x8c6a499e,        L"Gulim",       L"Arial",       0,      1252},\r
147     {0x8e0af790,        L"JuiceITC",    L"Arial",       0,      1252},\r
148     {0x8e8d43b2,        L"Centaur",     L"Arial",       2,      1252},\r
149     {0x8ee4dcca,        L"BookshelfSymbol7",    L"Arial",       0,      1252},\r
150     {0x90794800,        L"BellGothicStdLight",  L"Bell MT,Calibri,Times New Roman",     0,      1252},\r
151     {0x909b516a,        L"Century",     L"Arial",       2,      1252},\r
152     {0x92ae370d,        L"MSOutlook",   L"Arial",       4,      42},\r
153     {0x93c9fbf1,        L"LucidaFax",   L"Arial",       2,      1252},\r
154     {0x9565085e,        L"BookAntiqua", L"Arial",       2,      1252},\r
155     {0x9856d95d,        L"AdobeMingStdL",       L"Arial,Arial Unicode MS,Cambria,BatangChe",    0,      949},\r
156     {0x9bbadd6b,        L"ColonnaMT",   L"Arial",       0,      1252},\r
157     {0x9cbd16a4,        L"ShowcardGothic-Reg",  L"Arial",       0,      1252},\r
158     {0x9d73008e,        L"MSSansSerif", L"Arial",       0,      1252},\r
159     {0xa0607db1,        L"GungsuhChe",  L"Arial",       1,      1252},\r
160     {0xa0bcf6a1,        L"LatinWide",   L"Arial",       2,      1252},\r
161     {0xa1429b36,        L"Symbol",      L"Arial",       6,      42},\r
162     {0xa1fa5abc,        L"Wingdings2",  L"Arial",       6,      42},\r
163     {0xa1fa5abd,        L"Wingdings3",  L"Arial",       6,      42},\r
164     {0xa427bad4,        L"InformalRoman-Regular",       L"Arial",       8,      1252},\r
165     {0xa8b92ece,        L"FZSTK--GBK1-0",       L"Arial",       0,      936},\r
166     {0xa8d83ece,        L"CalifornianFB",       L"Arial",       2,      1252},\r
167     {0xaa3e082c,        L"Kingsoft-Phonetic",   L"Arial",       0,      1252},\r
168     {0xaa6bcabe,        L"HarlowSolidItalic",   L"Arial",       0,      1252},\r
169     {0xade5337c,        L"MSUIGothic",  L"Arial",       0,      1252},\r
170     {0xb08dd941,        L"WideLatin",   L"Arial",       2,      1252},\r
171     {0xb207f05d,        L"PoorRichard", L"Arial",       2,      1252},\r
172     {0xb3bc492f,        L"JuiceITC-Regular",    L"Arial",       0,      1252},\r
173     {0xb5545399,        L"Marlett",     L"Arial",       4,      42},\r
174     {0xb5dd1ebb,        L"BritannicBold",       L"Arial",       0,      1252},\r
175     {0xb699c1c5,        L"LucidaCalligraphy-Italic",    L"Arial",       0,      1252},\r
176     {0xb725d629,        L"TimesNewRoman",       L"Arial",       2,      1252},\r
177     {0xb7eaebeb,        L"AdobeHeitiStdR",      L"Batang,Century,Dotum",        0,      936},\r
178     {0xbd29c486,        L"BerlinSansFBDemi-Bold",       L"Arial",       0,      1252},\r
179     {0xbe8a8db4,        L"BookshelfSymbolSeven",        L"Arial",       0,      1252},\r
180     {0xc16c0118,        L"AdobeHebrew", L"Bell MT,Berlin Sans FB,Calibri",      0,      1252},\r
181     {0xc318b0af,        L"MyriadProLight",      L"Calibri,STFangsong,Times New Roman",  0,      1252},\r
182     {0xc65e5659,        L"CambriaMath", L"Arial",       2,      1252},\r
183     {0xc75c8f05,        L"LucidaConsole",       L"Arial",       1,      1252},\r
184     {0xca7c35d6,        L"Calibri",     L"Arial",       0,      1252},\r
185     {0xcb053f53,        L"MicrosoftYaHei",      L"Arial",       0,      936},\r
186     {0xcb7190f9,        L"Magneto-Bold",        L"Arial",       0,      1252},\r
187     {0xcca00cc5,        L"System",      L"Arial",       0,      1252},\r
188     {0xccad6f76,        L"Jokerman-Regular",    L"Arial",       0,      1252},\r
189     {0xccc5818c,        L"EuroSign",    L"Arial",       0,      1252},\r
190     {0xcf3d7234,        L"LucidaHandwriting-Italic",    L"Arial",       0,      1252},\r
191     {0xcf7b8fdb,        L"MinionPro",   L"Bell MT,Corbel,Times New Roman,Cambria,Berlin Sans FB",       0,      1252},\r
192     {0xcfe5755f,        L"Simhei",      L"Arial",       1,      936},\r
193     {0xd011f4ee,        L"MSPGothic",   L"Arial",       0,      1252},\r
194     {0xd060e7ef,        L"Vivaldi",     L"Arial",       8,      1252},\r
195     {0xd07edec1,        L"FranklinGothic-Medium",       L"Arial",       0,      1252},\r
196     {0xd107243f,        L"SimSun",      L"Arial",       0,      936},\r
197     {0xd1881562,        L"ArialNarrow", L"Arial Narrow",        0,      1252},\r
198     {0xd22b7dce,        L"BodoniMTPosterCompressed",    L"Arial",       0,      1252},\r
199     {0xd22bfa60,        L"ComicSansMS", L"Arial",       8,      1252},\r
200     {0xd3bd0e35,        L"Bauhaus93",   L"Arial",       0,      1252},\r
201     {0xd429ee7a,        L"STFangsong",  L"Arial",       0,      936},\r
202     {0xd6679c12,        L"BernardMTCondensed",  L"Arial",       0,      1252},\r
203     {0xd8e8a027,        L"LucidaSans",  L"Arial",       0,      1252},\r
204     {0xd9fe7761,        L"HighTowerText-Reg",   L"Arial",       2,      1252},\r
205     {0xda7e551e,        L"STSong",      L"Arial",       0,      936},\r
206     {0xdaa6842d,        L"STZhongsong", L"Arial",       0,      936},\r
207     {0xdaaab93f,        L"STFangsong",  L"Arial",       0,      936},\r
208     {0xdaeb0713,        L"STSong",      L"Arial",       0,      936},\r
209     {0xdafedbef,        L"STCaiyun",    L"Arial",       0,      936},\r
210     {0xdb00a3d9,        L"Broadway",    L"Arial",       0,      1252},\r
211     {0xdb1f5ad4,        L"STXinwei",    L"Arial",       0,      936},\r
212     {0xdb326e7f,        L"STKaiti",     L"Arial",       0,      936},\r
213     {0xdb69595a,        L"STHupo",      L"Arial",       0,      936},\r
214     {0xdba0082c,        L"STXihei",     L"Arial",       0,      936},\r
215     {0xdbd0ab18,        L"STXingkai",   L"Arial",       0,      936},\r
216     {0xdc1a7db1,        L"STLiti",      L"Arial",       0,      936},\r
217     {0xdc33075f,        L"KristenITC-Regular",  L"Arial",       8,      1252},\r
218     {0xdcc7009c,        L"Harrington",  L"Arial",       0,      1252},\r
219     {0xdd712466,        L"ArialBlack",  L"Arial",       0,      1252},\r
220     {0xdde87b3e,        L"Impact",      L"Arial",       0,      1252},\r
221     {0xdf69fb32,        L"SnapITC",     L"Arial",       0,      1252},\r
222     {0xdf8b25e8,        L"CenturyGothic",       L"Arial",       0,      1252},\r
223     {0xe0f705c0,        L"KristenITC",  L"Arial",       8,      1252},\r
224     {0xe1427573,        L"Raavi",       L"Arial",       0,      1252},\r
225     {0xe2cea0cb,        L"Magneto",     L"Arial",       0,      1252},\r
226     {0xe36a9e17,        L"Ravie",       L"Arial",       0,      1252},\r
227     {0xe433f8e2,        L"Parchment",   L"Arial",       8,      1252},\r
228     {0xe43dff4a,        L"Wingdings",   L"Arial",       4,      42},\r
229     {0xe4e2c405,        L"MTExtra",     L"Arial",       6,      42},\r
230     {0xe618cc35,        L"InformalRoman",       L"Arial",       8,      1252},\r
231     {0xe6c27ffc,        L"Mistral",     L"Arial",       8,      1252},\r
232     {0xe7ebf4b9,        L"Courier",     L"Courier New", 0,      1252},\r
233     {0xe8bc4a9d,        L"MSReferenceSpecialty",        L"Arial",       0,      1252},\r
234     {0xe90fb013,        L"TempusSansITC",       L"Arial",       0,      1252},\r
235     {0xec637b42,        L"Consolas",    L"Verdana",     1,      1252},\r
236     {0xed3a683b,        L"STXinwei",    L"Arial",       0,      936},\r
237     {0xef264cd1,        L"LucidaHandwriting",   L"Arial",       0,      1252},\r
238     {0xf086bca2,        L"BaskervilleOldFace",  L"Arial",       0,      1252},\r
239     {0xf1028030,        L"Mangal",      L"Arial",       2,      1252},\r
240     {0xf1da7eb9,        L"ShowcardGothic",      L"Arial",       0,      1252},\r
241     {0xf210f06a,        L"ArialMT",     L"Arial",       0,      1252},\r
242     {0xf477f16a,        L"Latha",       L"Arial",       0,      1252},\r
243     {0xf616f3dd,        L"LiSu",        L"Arial",       1,      936},\r
244     {0xfa479aa6,        L"MicrosoftYaHei",      L"Arial",       0,      936},\r
245     {0xfcd19697,        L"BookmanOldStyle",     L"Arial",       0,      1252},\r
246     {0xfe209a82,        L"LucidaCalligraphy",   L"Arial",       0,      1252},\r
247     {0xfef135f8,        L"AdobeHeitiStd-Regular",       L"Batang,Century,Dotum",        0,      936},\r
248 };\r
249 #elif _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_\r
250 static const XFA_FONTINFO g_XFAFontsMap[] = {\r
251     {0x01d5d33e,        L"SimSun",      L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR PL UMing TW MBE",      0,      936},\r
252     {0x01e4f102,        L"YouYuan",     L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR PL UMing TW MBE",      1,      936},\r
253     {0x030549dc,        L"LiSu",        L"WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Zen Hei Mono,WenQuanYi Micro Hei",        1,      936},\r
254     {0x032edd44,        L"Simhei",      L"WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Zen Hei Mono,WenQuanYi Micro Hei",        1,      936},\r
255     {0x03eac6fc,        L"PoorRichard-Regular", L"Droid Sans Japanese,FreeSerif",       2,      1252},\r
256     {0x03ed90e6,        L"Nina",        L"FreeSerif",   0,      1252},\r
257     {0x077b56b3,        L"KingsoftPhoneticPlain",       L"Tibetan Machine Uni,LKLUG,Samyak Gujarati,Droid Sans Thai,Droid Sans Armenian,Untitled1,utkal,Lohit Oriya",   0,      1252},\r
258     {0x078ed524,        L"MicrosoftSansSerif",  L"Droid Sans Japanese,FreeSerif,WenQuanYi Micro Hei",   0,      1252},\r
259     {0x089b18a9,        L"Arial",       L"Droid Sans Japanese,DejaVu Sans Condensed,FreeSerif,WenQuanYi Micro Hei",     0,      1252},\r
260     {0x0b2cad72,        L"MonotypeCorsiva",     L"Droid Sans Japanese,FreeSerif",       8,      1252},\r
261     {0x0bb003e7,        L"Kartika",     L"FreeSans,Liberation Sans,Liberation Sans Narrow,Nimbus Sans L,Garuda,FreeSerif,WenQuanYi Micro Hei",  2,      1252},\r
262     {0x0bb469df,        L"VinerHandITC",        L"Droid Sans Japanese,Ubuntu,Liberation Sans,Liberation Serif", 8,      1252},\r
263     {0x0bc1a851,        L"SegoeUI",     L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
264     {0x0c112ebd,        L"KozukaGothicPro-VIM", L"FreeSerif",   0,      1252},\r
265     {0x0cfcb9c1,        L"AdobeThai",   L"Droid Sans Japanese,Waree",   0,      847},\r
266     {0x0e7de0f9,        L"Playbill",    L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Ethiopic,Droid Sans Japanese,FreeSerif",    0,      1252},\r
267     {0x0eff47c3,        L"STHupo",      L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
268     {0x107ad374,        L"Constantia",  L"Droid Sans Japanese,FreeSerif,WenQuanYi Micro Hei,Ubuntu",    2,      1252},\r
269     {0x12194c2d,        L"KunstlerScript",      L"Droid Sans Japanese,Liberation Serif",        8,      1252},\r
270     {0x135ef6a1,        L"MinionProSmBd",       L"Liberation Serif",    0,      1252},\r
271     {0x158c4049,        L"Garamond",    L"Droid Sans Japanese,Liberation Serif,Ubuntu,FreeSerif",       2,      1252},\r
272     {0x160ecb24,        L"STZhongsong", L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
273     {0x161ed07e,        L"MSGothic",    L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW",      1,      1252},\r
274     {0x171d1ed1,        L"SnapITC-Regular",     L"Liberation Sans Narrow,Ubuntu Condensed,Nimbus Sans L,DejaVu Sans",   0,      1252},\r
275     {0x18d1188f,        L"Cambria",     L"Droid Sans Japanese,FreeSerif,FreeMono",      2,      1252},\r
276     {0x18eaf350,        L"ArialUnicodeMS",      L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
277     {0x1a92d115,        L"MingLiU",     L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        1,      1252},\r
278     {0x1cc217c6,        L"TrebuchetMS", L"Droid Sans Japanese,Liberation Serif,FreeSerif,Ubuntu",       0,      1252},\r
279     {0x1d649596,        L"BasemicTimes",        L"Liberation Serif,Times New Roman,Droid Sans Japanese,FreeSerif,Ubuntu",       0,      1252},\r
280     {0x1e34ee60,        L"BellMT",      L"KacstQurn,Droid Sans Japanese,Ubuntu,Liberation Serif",       2,      1252},\r
281     {0x1eb36945,        L"CooperBlack", L"KacstQurn,Droid Sans Japanese,FreeMono,Liberation Mono, WenQuanYi Micro Hei Mono",    2,      1252},\r
282     {0x1ef7787d,        L"BatangChe",   L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,WenQuanYi Zen Hei,WenQuanYi Micro Hei",   1,      1252},\r
283     {0x20b3bd3a,        L"BrushScriptMT",       L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans Japanese,URW Chancery L,Liberation Sans", 8,      1252},\r
284     {0x220877aa,        L"Candara",     L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
285     {0x22135007,        L"FreestyleScript-Regular",     L"KacstQurn,Droid Sans Japanese,Liberation Sans",       8,      1252},\r
286     {0x251059c3,        L"Chiller",     L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans Japanese,Liberation Sans",        0,      1252},\r
287     {0x25bed6dd,        L"MSReferenceSansSerif",        L"DejaVu Sans Condensed,Ubuntu Condensed,Droid Sans Japanese,AR PL UKai HK",    0,      1252},\r
288     {0x28154c81,        L"Parchment-Regular",   L"Droid Sans Japanese,Liberation Sans", 8,      1252},\r
289     {0x29711eb9,        L"STLiti",      L"AR PL UKai HK",       0,      936},\r
290     {0x2b1993b4,        L"Basemic",     L"Liberation Serif,Droid Sans Japanese,Liberation Sans",        0,      1252},\r
291     {0x2b316339,        L"NiagaraSolid-Reg",    L"Droid Sans Japanese,Liberation Sans", 0,      1252},\r
292     {0x2c147529,        L"FootlightMTLight",    L"KacstQurn,Droid Sans Japanese,Liberation Sans",       0,      1252},\r
293     {0x2c198928,        L"HarlowSolid", L"KacstQurn,Droid Sans Japanese,Liberation Sans",       0,      1252},\r
294     {0x2c6ac6b2,        L"LucidaBright",        L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,Liberation Sans",  2,      1252},\r
295     {0x2c9f38e2,        L"KozukaMinchoPro-VIR", L"DejaVu Sans", 0,      1252},\r
296     {0x2d5a47b0,        L"STCaiyun",    L"AR PL UKai HK",       0,      936},\r
297     {0x2def26bf,        L"BernardMT-Condensed", L"KacstQurn,Droid Sans Japanese,DejaVu Serif",  0,      1252},\r
298     {0x2fd8930b,        L"KozukaMinchoPr6NR",   L"DejaVu Serif",        0,      1252},\r
299     {0x3115525a,        L"FangSong_GB2312",     L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      1252},\r
300     {0x31327817,        L"MyriadPro",   L"Ubuntu Condensed,Droid Sans Japanese, FreeSerif",     0,      1252},\r
301     {0x32244975,    L"Helvetica", L"Ubuntu,DejaVu Sans Condensed,Liberation Sans,Liberation Sans Narrow,Nimbus Sans L",  0,   1252},\r
302     {0x32ac995c,        L"Terminal",    L"DejaVu Serif",        0,      1252},\r
303     {0x338d648a,        L"NiagaraEngraved-Reg", L"Droid Sans Japanese,DejaVu Serif",    0,      1252},\r
304     {0x33bb65f2,        L"Sylfaen",     L"Droid Sans Japanese,DejaVu Sans",     2,      1252},\r
305     {0x3402c30e,        L"MSPMincho",   L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 2,      1252},\r
306     {0x3412bf31,        L"SimSun-PUA",  L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing CN,AR PL UMing HK", 0,      936},\r
307     {0x36eb39b9,        L"BerlinSansFB",        L"Droid Sans Japanese,Liberation Serif,Ubuntu,FreeSerif",       0,      1252},\r
308     {0x36f42055,        L"UniversATT",  L"Microsoft Sans Serif",        0,      1252},\r
309     {0x3864c4f6,        L"HighTowerText",       L"Droid Sans Japanese,DejaVu Serif",    2,      1252},\r
310     {0x3a257d03,        L"FangSong_GB2312",     L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei",    0,      1252},\r
311     {0x3c7d1d07,        L"Garamond3LTStd",  L"Droid Sans Japanese,Ubuntu Condensed,DejaVu Sans Condensed,Liberation Serif,Ubuntu,FreeSerif",    2,      1252},\r
312     {0x3cdae668,        L"FreestyleScript",     L"KacstQurn,Droid Sans Japanese,DejaVu Sans",   8,      1252},\r
313     {0x3d55aed7,        L"Jokerman",    L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
314     {0x3d5b4385,        L"PMingLiU",    L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        2,      1252},\r
315     {0x3d9b7669,        L"EstrangeloEdessa",    L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
316     {0x3e532d74,        L"FranklinGothicMedium",        L"Droid Sans Japanese,Ubuntu",  0,      1252},\r
317     {0x3e6aa32d,        L"NSimSun",     L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        1,      936},\r
318     {0x3f6c36a8,        L"Gautami",     L"Droid Arabic Naskh,Droid Sans Ethiopic, mry_KacstQurn,Droid Sans Japanese,FreeSans",  0,      1252},\r
319     {0x3ff32662,        L"Chiller-Regular",     L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,FreeSans",   0,      1252},\r
320     {0x409de312,        L"ModernNo.20", L"KacstQurn,Droid Sans Japanese,Nimbus Sans L,Nimbus Sans L,FreeSans",  2,      1252},\r
321     {0x41443c5e,        L"Georgia",     L"Droid Sans Japanese,FreeSans",        2,      1252},\r
322     {0x4160ade5,        L"BellGothicStdBlack",  L"FreeSans",    0,      1252},\r
323     {0x421976c4,        L"Modern-Regular",      L"FreeSans",    2,      1252},\r
324     {0x422a7252,        L"Stencil",     L"Droid Sans Japanese,FreeSans,Liberation Sans",        0,      1252},\r
325     {0x42c8554f,        L"Fixedsys",    L"FreeSerif",   0,      1252},\r
326     {0x435cb41d,        L"Roman",       L"FreeSerif",   0,      1252},\r
327     {0x47882383,        L"CourierNew",  L"FreeMono,WenQuanYi Micro Hei Mono,AR PL UKai CN,AR PL UKai HK,AR PL UKai TW,AR PL UKai TW MBE,DejaVu Sans",   1,      1252},\r
328     {0x480a2338,        L"BerlinSansFBDemi",    L"Droid Sans Japanese,Liberation Serif",        0,      1252},\r
329     {0x480bf7a4,        L"CourierStd",  L"DejaVu Sans", 0,      1252},\r
330     {0x481ad6ed,        L"VladimirScript",      L"Droid Sans Japanese,DejaVu Serif",    8,      1252},\r
331     {0x4911577a,        L"YouYuan",     L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 1,      936},\r
332     {0x4a788d72,        L"STXingkai",   L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
333     {0x4bf88566,        L"SegoeCondensed",      L"FreeSerif",   0,      1252},\r
334     {0x4ccf51a4,        L"BerlinSansFB-Reg",    L"Droid Sans Japanese,Liberation Serif",        0,      1252},\r
335     {0x4ea967ce,        L"GulimChe",    L"WenQuanYi Zen Hei Mono,AR PL UKai CN,AR PL UKai HK,AR PL UKai TW,AR PL UKai TW MBE",  1,      1252},\r
336     {0x4f68bd79,        L"LetterGothicStd",     L"FreeMono,Liberation Mono,Andale Mono,WenQuanYi Micro Hei Mono",       0,      1252},\r
337     {0x51a0d0e6,        L"KozukaGothicPr6NM",   L"FreeSerif",   0,      1252},\r
338     {0x531b3dea,        L"BasemicSymbol",       L"FreeSerif",   0,      1252},\r
339     {0x5333fd39,        L"CalifornianFB-Reg",   L"Droid Sans Japanese,URW Chancery L,FreeSerif",        2,      1252},\r
340     {0x53561a54,        L"FZYTK--GBK1-0",       L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
341     {0x55e0dde6,        L"LucidaSansTypewriter",        L"Ubuntu Mono,DejaVu Sans Mono,Nimbus Mono L,Liberation Mono,Courier 10 Pitch,FreeMono",        0,      1252},\r
342     {0x574d4d3d,        L"AdobeArabic", L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
343     {0x5792e759,        L"STKaiti",     L"WenQuanYi Micro Hei Mono",    0,      936},\r
344     {0x5921978e,        L"LucidaSansUnicode",   L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
345     {0x594e2da4,        L"Vrinda",      L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Arabic Naskh,mry_KacstQurn,Droid Sans Japanese,FreeSans,FreeSerif",      0,      1252},\r
346     {0x59baa9a2,        L"KaiTi_GB2312",        L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      1252},\r
347     {0x5cfedf4f,        L"BaskOldFace", L"KacstQurn,Droid Sans Japanese,Ubuntu,Liberation Serif",       0,      1252},\r
348     {0x5e16ac91,    L"TrajanPro",   L"Nimbus Sans L,AR PL UMing HK,AR PL UKai HK,AR PL UMing TW,AR PL UMing TW MBE,DejaVu Sans,DejaVu Serif",  0,  1252},\r
349     {0x5f388196,    L"ITCLegacySansStdMedium",  L"Liberation Serif,FreeSerif,FreeSans,Ubuntu", 0, 1252},\r
350     {0x5f97921c,        L"AdobeMyungjoStdM",    L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
351     {0x5fefbfad,        L"Batang",      L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        2,      1252},\r
352     {0x605342b9,        L"DotumChe",    L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 1,      1252},\r
353     {0x608c5f9a,        L"KaiTi_GB2312",        L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
354     {0x61efd0d1,        L"MaturaMTScriptCapitals",      L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,DejaVu Serif,DejaVu Sans", 0,      1252},\r
355     {0x626608a9,        L"MVBoli",      L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Ethiopic,Droid Sans Japanese,DejaVu Sans",    0,      1252},\r
356     {0x630501a3,        L"SmallFonts",  L"DejaVu Serif",        0,      1252},\r
357     {0x65d0e2a9,        L"FZYTK--GBK1-0",       L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
358     {0x669f29e1,        L"FZSTK--GBK1-0",       L"AR PL UMing CN,AR PL UKai CN, AR PL UMing HK",        0,      936},\r
359     {0x673a9e5f,        L"Tunga",       L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,DejaVu Serif",       0,      1252},\r
360     {0x691aa4ce,        L"NiagaraSolid",        L"Droid Sans Japanese,DejaVu Serif",    0,      1252},\r
361     {0x696259b7,        L"Corbel",      L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
362     {0x696ee9be,        L"STXihei",     L"WenQuanYi Micro Hei Mono",    0,      936},\r
363     {0x6c59cf69,        L"Dotum",       L"WenQuanYi Zen Hei Mono",      0,      1252},\r
364     {0x707fa561,        L"Gungsuh",     L"WenQuanYi Zen Hei Mono",      2,      1252},\r
365     {0x71416bb2,        L"ZWAdobeF",    L"KacstArt,KacstBookm,KacstDecorative,KacstDigital,KacstFarsi,KacstLetter,KacstOffice,Dingbats,FreeSerif",      0,      1252},\r
366     {0x71b41801,        L"Verdana",     L"DejaVu Sans Condensed,Ubuntu Condensed,Droid Sans Japanese,DejaVu Sans",      0,      1252},\r
367     {0x73f25e4c,        L"PalatinoLinotype",    L"Droid Sans Japanese,FreeSerif",       0,      1252},\r
368     {0x73f4d19f,        L"NiagaraEngraved",     L"Droid Sans Japanese,FreeSerif",       0,      1252},\r
369     {0x74001694,        L"MyriadProBlack",      L"Droid Sans Japanese,AR PL UKai HK",   0,      1252},\r
370     {0x74b14d8f,        L"Haettenschweiler",    L"Droid Sans Japanese,DejaVu Serif",    0,      1252},\r
371     {0x74cb44ee,        L"NSimSun",     L"WenQuanYi Zen Hei Mono",      1,      936},\r
372     {0x76b4d7ff,        L"Shruti",      L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,FreeSans",   0,      1252},\r
373     {0x788b3533,        L"Webdings",    L"FreeSans",    6,      42},\r
374     {0x797dde99,        L"MSSerif",     L"FreeSans",    0,      1252},\r
375     {0x7a0f9e9e,        L"MSMincho",    L"WenQuanYi Micro Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW",       1,      1252},\r
376     {0x7b439caf,        L"OldEnglishTextMT",    L"Droid Sans Japanese,Liberation Sans,Ubuntu",  0,      1252},\r
377     {0x8213a433,        L"LucidaSans-Typewriter",       L"Ubuntu Mono,Liberation Mono,DejaVu Sans Mono",        0,      1252},\r
378     {0x82fec929,        L"AdobeSongStdL",       L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
379     {0x83581825,        L"Modern",      L"FreeSans",    0,      1252},\r
380     {0x835a2823,        L"Algerian",    L"KacstQurn,Droid Sans Japanese,FreeSans,Liberation Sans,Ubuntu",       0,      1252},\r
381     {0x83dab9f5,        L"Script",      L"FreeSans",    0,      1252},\r
382     {0x847b56da,        L"Tahoma",      L"Droid Sans Japanese,DejaVu Sans Condensed,FreeSerif", 0,      1252},\r
383     {0x8a783cb2,        L"SimSun-PUA",  L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      1252},\r
384     {0x8b5cac0e,        L"Onyx",        L"Droid Sans Japanese,Liberation Sans", 0,      1252},\r
385     {0x8c6a499e,        L"Gulim",       L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      1252},\r
386     {0x8e0af790,        L"JuiceITC",    L"Droid Sans Japanese,Liberation Sans", 0,      1252},\r
387     {0x8e8d43b2,        L"Centaur",     L"KacstQurn,Droid Sans Japanese,Khmer OS,Khmer OS System",      2,      1252},\r
388     {0x8ee4dcca,        L"BookshelfSymbol7",    L"Liberation Sans",     0,      1252},\r
389     {0x90794800,        L"BellGothicStdLight",  L"Liberation Sans",     0,      1252},\r
390     {0x909b516a,        L"Century",     L"Droid Sans Japanese,Liberation Sans,Liberation Mono,Liberation Serif",        2,      1252},\r
391     {0x92ae370d,        L"MSOutlook",   L"Liberation Sans",     4,      42},\r
392     {0x93c9fbf1,        L"LucidaFax",   L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Liberation Sans",      2,      1252},\r
393     {0x9565085e,        L"BookAntiqua", L"Droid Sans Japanese,Liberation Sans,Liberation Serif",        2,      1252},\r
394     {0x9856d95d,        L"AdobeMingStdL",       L"AR PL UMing HK",      0,      949},\r
395     {0x9bbadd6b,        L"ColonnaMT",   L"KacstQurn,Droid Sans Japanese,Khmer OS,Khmer OS System",      0,      1252},\r
396     {0x9cbd16a4,        L"ShowcardGothic-Reg",  L"Droid Sans Japanese,Liberation Sans,Ubuntu",  0,      1252},\r
397     {0x9d73008e,        L"MSSansSerif", L"FreeSerif",   0,      1252},\r
398     {0xa0607db1,        L"GungsuhChe",  L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        1,      1252},\r
399     {0xa0bcf6a1,        L"LatinWide",   L"FreeSerif",   2,      1252},\r
400     {0xa1429b36,        L"Symbol",      L"FreeSerif",   6,      42},\r
401     {0xa1fa5abc,        L"Wingdings2",  L"FreeSerif",   6,      42},\r
402     {0xa1fa5abd,        L"Wingdings3",  L"FreeSerif",   6,      42},\r
403     {0xa427bad4,        L"InformalRoman-Regular",       L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,FreeSerif",  8,      1252},\r
404     {0xa8b92ece,        L"FZSTK--GBK1-0",       L"AR PL UMing CN",      0,      936},\r
405     {0xa8d83ece,        L"CalifornianFB",       L"Droid Sans Japanese,FreeSerif",       2,      1252},\r
406     {0xaa3e082c,        L"Kingsoft-Phonetic",   L"Tibetan Machine Uni,LKLUG,Samyak Gujarati,Droid Sans Thai,utkal,Kedage,Mallige,AR PL UKai CN",        0,      1252},\r
407     {0xaa6bcabe,        L"HarlowSolidItalic",   L"KacstQurn,Droid Sans Japanese,Liberation Serif",      0,      1252},\r
408     {0xade5337c,        L"MSUIGothic",  L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      1252},\r
409     {0xb08dd941,        L"WideLatin",   L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,Liberation Serif", 2,      1252},\r
410     {0xb12765e0,    L"ITCLegacySansStdBook",  L"AR PL UMing HK,AR PL UKai HK,FreeSerif,Ubuntu,FreeSans",   0,  1252},\r
411     {0xb207f05d,        L"PoorRichard", L"Droid Sans Japanese,Liberation Serif",        2,      1252},\r
412     {0xb3bc492f,        L"JuiceITC-Regular",    L"Droid Sans Japanese,Liberation Serif",        0,      1252},\r
413     {0xb5545399,        L"Marlett",     L"Liberation Serif",    4,      42},\r
414     {0xb5dd1ebb,        L"BritannicBold",       L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Liberation Serif",     0,      1252},\r
415     {0xb699c1c5,        L"LucidaCalligraphy-Italic",    L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,DejaVu Serif",     0,      1252},\r
416     {0xb725d629,        L"TimesNewRoman",       L"Droid Sans Japanese,Liberation Sans", 2,      1252},\r
417     {0xb7eaebeb,        L"AdobeHeitiStdR",      L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
418     {0xbd29c486,        L"BerlinSansFBDemi-Bold",       L"Droid Sans Japanese,DejaVu Serif",    0,      1252},\r
419     {0xbe8a8db4,        L"BookshelfSymbolSeven",        L"DejaVu Sans", 0,      1252},\r
420     {0xc16c0118,        L"AdobeHebrew", L"Droid Sans Japanese,Ubuntu,Liberation Serif", 0,      1252},\r
421     {0xc318b0af,        L"MyriadProLight",      L"Droid Sans Japanese,AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",      0,      1252},\r
422     {0xc65e5659,        L"CambriaMath", L"Droid Sans Japanese,FreeSerif,FreeMono",      2,      1252},\r
423     {0xc75c8f05,        L"LucidaConsole",       L"Liberation Mono,DejaVu Sans Mono,FreeMono,WenQuanYi Micro Hei Mono",  1,      1252},\r
424     {0xca7c35d6,        L"Calibri",     L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
425     {0xcb053f53,        L"MicrosoftYaHei",      L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
426     {0xcb7190f9,        L"Magneto-Bold",        L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,DejaVu Serif",       0,      1252},\r
427     {0xcca00cc5,        L"System",      L"DejaVu Sans", 0,      1252},\r
428     {0xccad6f76,        L"Jokerman-Regular",    L"Droid Sans Japanese,DejaVu Sans",     0,      1252},\r
429     {0xccc5818c,        L"EuroSign",    L"DejaVu Serif",        0,      1252},\r
430     {0xcf3d7234,        L"LucidaHandwriting-Italic",    L"Liberation Sans Narrow,Ubuntu Condensed,Nimbus Sans L,DejaVu Serif",  0,      1252},\r
431     {0xcf7b8fdb,        L"MinionPro",   L"DejaVu Sans", 0,      1252},\r
432     {0xcfe5755f,        L"Simhei",      L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        1,      936},\r
433     {0xd011f4ee,        L"MSPGothic",   L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW", 0,      1252},\r
434     {0xd060e7ef,        L"Vivaldi",     L"KacstQurn,Droid Sans Japanese,Liberation Sans,Ubuntu",        8,      1252},\r
435     {0xd07edec1,        L"FranklinGothic-Medium",       L"Droid Sans Japanese,Ubuntu",  0,      1252},\r
436     {0xd107243f,        L"SimSun",      L"WenQuanYi Zen Hei Mono",      0,      936},\r
437     {0xd1881562,        L"ArialNarrow", L"Liberation Sans Narrow,Droid Sans Japanese,FreeSerif",        0,      1252},\r
438     {0xd22b7dce,        L"BodoniMTPosterCompressed",    L"Droid Sans Japanese,DejaVu Serif",    0,      1252},\r
439     {0xd22bfa60,        L"ComicSansMS", L"Droid Sans Japanese,FreeMono,Liberation Mono",        8,      1252},\r
440     {0xd3bd0e35,        L"Bauhaus93",   L"KacstQurn,Droid Sans Japanese,Liberation Sans,Ubuntu",        0,      1252},\r
441     {0xd429ee7a,        L"STFangsong",  L"WenQuanYi Micro Hei Mono",    0,      936},\r
442     {0xd6679c12,        L"BernardMTCondensed",  L"KacstQurn,Droid Sans Japanese,Nimbus Sans L,URW Chancery L,KacstOne,Liberation Sans", 0,      1252},\r
443     {0xd8e8a027,        L"LucidaSans",  L"Liberation Sans Narrow,Nimbus Sans L,KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,DejaVu Serif Condensed,Liberation Mono,Ubuntu", 0,      1252},\r
444     {0xd9fe7761,        L"HighTowerText-Reg",   L"Droid Sans Japanese,Ubuntu,Liberation Serif", 2,      1252},\r
445     {0xda7e551e,        L"STSong",      L"WenQuanYi Micro Hei Mono",    0,      936},\r
446     {0xdaa6842d,        L"STZhongsong", L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
447     {0xdaaab93f,        L"STFangsong",  L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp",   0,      936},\r
448     {0xdaeb0713,        L"STSong",      L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp",   0,      936},\r
449     {0xdafedbef,        L"STCaiyun",    L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
450     {0xdb00a3d9,        L"Broadway",    L"KacstQurn,Droid Sans Japanese,DejaVu Sans,FreeMono,Liberation Mono",  0,      1252},\r
451     {0xdb1f5ad4,        L"STXinwei",    L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
452     {0xdb326e7f,        L"STKaiti",     L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp",   0,      936},\r
453     {0xdb69595a,        L"STHupo",      L"WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp",   0,      936},\r
454     {0xdba0082c,        L"STXihei",     L" WenQuanYi Micro Hei Mono,WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp",  0,      936},\r
455     {0xdbd0ab18,        L"STXingkai",   L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
456     {0xdc1a7db1,        L"STLiti",      L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
457     {0xdc33075f,        L"KristenITC-Regular",  L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu Sans Condensed,Ubuntu,Liberation Sans",   8,      1252},\r
458     {0xdcc7009c,        L"Harrington",  L"KacstQurn,Droid Sans Japanese,Liberation Serif,FreeSerif,Ubuntu",     0,      1252},\r
459     {0xdd712466,        L"ArialBlack",  L"Droid Sans Japanese,DejaVu Sans,DejaVu Serif,FreeMono",       0,      1252},\r
460     {0xdde87b3e,        L"Impact",      L"Droid Sans Japanese,DejaVu Serif",    0,      1252},\r
461     {0xdf69fb32,        L"SnapITC",     L"Liberation Sans Narrow,Ubuntu Condensed,DejaVu Sans,DejaVu Serif,FreeMono",   0,      1252},\r
462     {0xdf8b25e8,        L"CenturyGothic",       L"Droid Sans Japanese,Liberation Mono,Liberation Sans,Liberation Serif",        0,      1252},\r
463     {0xe0f705c0,        L"KristenITC",  L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu Sans Condensed,Ubuntu,Liberation Sans",   8,      1252},\r
464     {0xe1427573,        L"Raavi",       L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,FreeSerif,Liberation Serif,Khmer OS",    0,      1252},\r
465     {0xe2cea0cb,        L"Magneto",     L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu Serif,DejaVu Serif Condensed,DejaVu Sans",        0,      1252},\r
466     {0xe36a9e17,        L"Ravie",       L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,DejaVu Serif,DejaVu Sans,FreeMono",      0,      1252},\r
467     {0xe433f8e2,        L"Parchment",   L"Droid Sans Japanese,DejaVu Serif",    8,      1252},\r
468     {0xe43dff4a,        L"Wingdings",   L"DejaVu Serif",        4,      42},\r
469     {0xe4e2c405,        L"MTExtra",     L"DejaVu Serif",        6,      42},\r
470     {0xe618cc35,        L"InformalRoman",       L"Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,Nimbus Sans L,DejaVu Sans Condensed,Ubuntu,Liberation Sans", 8,      1252},\r
471     {0xe6c27ffc,        L"Mistral",     L"Droid Sans Japanese,DejaVu Serif",    8,      1252},\r
472     {0xe7ebf4b9,        L"Courier",     L"DejaVu Sans,DejaVu Sans Condensed,FreeSerif", 0,      1252},\r
473     {0xe8bc4a9d,        L"MSReferenceSpecialty",        L"DejaVu Serif",        0,      1252},\r
474     {0xe90fb013,        L"TempusSansITC",       L"Droid Sans Japanese,Ubuntu,Liberation Serif,FreeSerif",       0,      1252},\r
475     {0xec637b42,        L"Consolas",    L"DejaVu Sans Condensed,AR PL UKai CN,AR PL UKai HK,AR PL UKai TW,FreeSerif,FreeSans",  1,      1252},\r
476     {0xed3a683b,        L"STXinwei",    L"AR PL UKai HK,AR PL UMing HK,AR PL UKai CN",  0,      936},\r
477     {0xef264cd1,        L"LucidaHandwriting",   L"Liberation Sans Narrow,Ubuntu Condensed,Nimbus Sans L,KacstQurn,Liberation Mono",     0,      1252},\r
478     {0xf086bca2,        L"BaskervilleOldFace",  L"KacstQurn,Droid Sans Japanese,Liberation Serif,Ubuntu,FreeSerif",     0,      1252},\r
479     {0xf1028030,        L"Mangal",      L"FreeSans,TSCu_Paranar,Garuda,Liberation Sans,Liberation Sans Narrow,Nimbus Sans L",   2,      1252},\r
480     {0xf1da7eb9,        L"ShowcardGothic",      L"Droid Sans Japanese,DejaVu Serif Condensed,DejaVu Sans Condensed,Liberation Sans,Ubuntu",     0,      1252},\r
481     {0xf210f06a,        L"ArialMT",     L"Liberation Sans,Liberation Sans Narrow,FreeSans,Nimbus Sans L,Khmer OS System,Khmer OS",      0,      1252},\r
482     {0xf477f16a,        L"Latha",       L"Liberation Sans Narrow,Nimbus Sans L,Droid Arabic Naskh,mry_KacstQurn,FreeSerif,Nimbus Sans L",       0,      1252},\r
483     {0xf616f3dd,        L"LiSu",        L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR PL UMing TW MBE",      1,      936},\r
484     {0xfa479aa6,        L"MicrosoftYaHei",      L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
485     {0xfcd19697,        L"BookmanOldStyle",     L"Droid Sans Japanese,Liberation Mono,Liberation Sans,Liberation Serif",        0,      1252},\r
486     {0xfe209a82,        L"LucidaCalligraphy",   L"KacstQurn,Droid Arabic Naskh,Droid Sans Ethiopic,mry_KacstQurn,Droid Sans Japanese,DejaVu Serif,DejaVu Sans,FreeMono",        0,      1252},\r
487     {0xfef135f8,        L"AdobeHeitiStd-Regular",       L"WenQuanYi Zen Hei Mono,WenQuanYi Zen Hei,WenQuanYi Zen Hei Sharp,WenQuanYi Micro Hei",        0,      936},\r
488 };\r
489 #elif _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_\r
490 static const XFA_FONTINFO g_XFAFontsMap[] = {\r
491     {0x01d5d33e,        L"SimSun",      L"STHeiti,Heiti TC,STFangsong", 0,      936},\r
492     {0x01e4f102,        L"YouYuan",     L"STHeiti,Heiti TC,STFangsong", 1,      936},\r
493     {0x030549dc,        L"LiSu",        L"STHeiti,Heiti TC,STFangsong", 1,      936},\r
494     {0x032edd44,        L"Simhei",      L"STHeiti,Heiti TC,STFangsong", 1,      936},\r
495     {0x03eac6fc,        L"PoorRichard-Regular", L"Noteworthy,Avenir Next Condensed,Impact",     2,      1252},\r
496     {0x03ed90e6,        L"Nina",        L"Microsoft Sans Serif",        0,      1252},\r
497     {0x077b56b3,        L"KingsoftPhoneticPlain",       L"LastResort,Apple Chancery,STIXVariants,STIXSizeOneSym,STIXSizeOneSym,Apple Braille",  0,      1252},\r
498     {0x078ed524,        L"MicrosoftSansSerif",  L"Songti SC,Apple Symbols",     0,      1252},\r
499     {0x089b18a9,        L"Arial",       L"Arial Unicode MS,Microsoft Sans Serif,Apple Symbols", 0,      1252},\r
500     {0x0b2cad72,        L"MonotypeCorsiva",     L"Arial Narrow,Impact", 8,      1252},\r
501     {0x0bb003e7,        L"Kartika",     L"Arial Unicode MS,Microsoft Sans Serif,Arial Narrow,Damascus", 2,      1252},\r
502     {0x0bb469df,        L"VinerHandITC",        L"Comic Sans MS,Songti SC,STSong",      8,      1252},\r
503     {0x0bc1a851,        L"SegoeUI",     L"Apple Symbols",       0,      1252},\r
504     {0x0c112ebd,        L"KozukaGothicPro-VIM", L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
505     {0x0cfcb9c1,        L"AdobeThai",   L"Avenir Next Condensed Ultra Light",   0,      847},\r
506     {0x0e7de0f9,        L"Playbill",    L"STIXNonUnicode",      0,      1252},\r
507     {0x0eff47c3,        L"STHupo",      L"Kaiti SC,Songti SC,STHeiti",  0,      936},\r
508     {0x107ad374,        L"Constantia",  L"Arial Unicode MS,Palatino,Baskerville",       2,      1252},\r
509     {0x12194c2d,        L"KunstlerScript",      L"Avenir Next Condensed Demi Bold,Arial Narrow",        8,      1252},\r
510     {0x135ef6a1,        L"MinionProSmBd",       L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
511     {0x158c4049,        L"Garamond",    L"Impact,Arial Narrow", 2,      1252},\r
512     {0x160ecb24,        L"STZhongsong", L"STFangsong,Songti SC",        0,      936},\r
513     {0x161ed07e,        L"MSGothic",    L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,Microsoft Sans Serif,Apple Symbols",      1,      1252},\r
514     {0x171d1ed1,        L"SnapITC-Regular",     L"STHeiti,Arial Black", 0,      1252},\r
515     {0x18d1188f,        L"Cambria",     L"Arial Unicode MS",    2,      1252},\r
516     {0x18eaf350,        L"ArialUnicodeMS",      L"Microsoft Sans Serif,Apple Symbols",  0,      936},\r
517     {0x1a92d115,        L"MingLiU",     L"Heiti SC,STHeiti",    1,      1252},\r
518     {0x1cc217c6,        L"TrebuchetMS", L"Damascus,Impact,Arial Narrow",        0,      1252},\r
519     {0x1d649596,        L"BasemicTimes",        L"Liberation Serif,Impact,Arial Narrow",        0,      1252},\r
520     {0x1e34ee60,        L"BellMT",      L"Papyrus,STIXNonUnicode,Microsoft Sans Serif,Avenir Light",    2,      1252},\r
521     {0x1eb36945,        L"CooperBlack", L"Marion,STIXNonUnicode,Arial Rounded MT Bold,Lucida Grande",   2,      1252},\r
522     {0x1ef7787d,        L"BatangChe",   L"WenQuanYi Zen Hei Mono,AR PL UMing CN,,AR PL UMing HK,AR PL UMing TW,AR PL UMing TW MBE,Arial Unicode MS,Heiti TC",   1,      1252},\r
523     {0x20b3bd3a,        L"BrushScriptMT",       L"STIXNonUnicode,Damascus,Arial Narrow,Avenir Next Condensed,Cochin",   8,      1252},\r
524     {0x220877aa,        L"Candara",     L"Cochin,Baskerville,Marion",   0,      1252},\r
525     {0x22135007,        L"FreestyleScript-Regular",     L"STIXNonUnicode,Nadeem,Zapf Dingbats", 8,      1252},\r
526     {0x251059c3,        L"Chiller",     L"Zapf Dingbats,Damascus,STIXNonUnicode,Papyrus,KufiStandardGK,Baghdad",        0,      1252},\r
527     {0x25bed6dd,        L"MSReferenceSansSerif",        L"Tahoma,Apple Symbols,Apple LiGothic,Arial Unicode MS,Lucida Grande,Microsoft Sans Serif",     0,      1252},\r
528     {0x28154c81,        L"Parchment-Regular",   L"Microsoft Sans Serif,Apple Symbols",  8,      1252},\r
529     {0x29711eb9,        L"STLiti",      L"Kaiti SC,Songti SC",  0,      936},\r
530     {0x2b1993b4,        L"Basemic",     L"Impact,Arial Narrow", 0,      1252},\r
531     {0x2b316339,        L"NiagaraSolid-Reg",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
532     {0x2c147529,        L"FootlightMTLight",    L"STIXNonUnicode,Avenir Next Condensed Heavy,PT Sans,Noteworthy",       0,      1252},\r
533     {0x2c198928,        L"HarlowSolid", L"Avenir Medium,Avenir Next Medium,Arial Unicode MS",   0,      1252},\r
534     {0x2c6ac6b2,        L"LucidaBright",        L"PT Sans Narrow,Papyrus,Damascus,STIXNonUnicode,Arial Rounded MT Bold,Comic Sans MS,Avenir Next",      2,      1252},\r
535     {0x2c9f38e2,        L"KozukaMinchoPro-VIR", L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
536     {0x2d5a47b0,        L"STCaiyun",    L"Kaiti SC,Songti SC",  0,      936},\r
537     {0x2def26bf,        L"BernardMT-Condensed", L"Impact,Avenir Next Condensed Demi Bold,American Typewriter",  0,      1252},\r
538     {0x2fd8930b,        L"KozukaMinchoPr6NR",   L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
539     {0x3115525a,        L"FangSong_GB2312",     L"Hiragino Sans GB,STHeiti",    0,      1252},\r
540     {0x31327817,        L"MyriadPro",   L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
541     {0x32244975,    L"Helvetica", L"Arial Narrow,Arial Unicode MS,Damascus,STIXNonUnicode",      0,   1252},\r
542     {0x32ac995c,        L"Terminal",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
543     {0x338d648a,        L"NiagaraEngraved-Reg", L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
544     {0x33bb65f2,        L"Sylfaen",     L"Arial Unicode MS,Marion",     2,      1252},\r
545     {0x3402c30e,        L"MSPMincho",   L"Arial Unicode MS,Apple SD Gothic Neo",        2,      1252},\r
546     {0x3412bf31,        L"SimSun-PUA",  L"STHeiti,Heiti TC,STFangsong", 0,      936},\r
547     {0x36eb39b9,        L"BerlinSansFB",        L"American Typewriter,Impact",  0,      1252},\r
548     {0x36f42055,        L"UniversATT",  L"Microsoft Sans Serif",        0,      1252},\r
549     {0x3864c4f6,        L"HighTowerText",       L"STIXGeneral,.Helvetica Neue Desk UI", 2,      1252},\r
550     {0x3a257d03,        L"FangSong_GB2312",     L"Hiragino Sans GB,STHeiti",    0,      1252},\r
551     {0x3cdae668,        L"FreestyleScript",     L"Nadeem,Zapf Dingbats,STIXNonUnicode", 8,      1252},\r
552     {0x3d55aed7,        L"Jokerman",    L"Papyrus,Lucida Grande,Heiti TC,American Typewriter",  0,      1252},\r
553     {0x3d5b4385,        L"PMingLiU",    L"Heiti SC,STHeiti",    2,      1252},\r
554     {0x3d9b7669,        L"EstrangeloEdessa",    L"American Typewriter,Marion",  0,      1252},\r
555     {0x3e532d74,        L"FranklinGothicMedium",        L"Impact,Arial Narrow", 0,      1252},\r
556     {0x3e6aa32d,        L"NSimSun",     L"STHeiti,STFangsong",  1,      936},\r
557     {0x3f6c36a8,        L"Gautami",     L"Damascus,STIXNonUnicode,STIXGeneral,American Typewriter",     0,      1252},\r
558     {0x3ff32662,        L"Chiller-Regular",     L"Papyrus,KufiStandardGK,Baghdad",      0,      1252},\r
559     {0x409de312,        L"ModernNo.20", L"Avenir Next Condensed,Impact",        2,      1252},\r
560     {0x41443c5e,        L"Georgia",     L".Helvetica Neue Desk UI,Arial Unicode MS",    2,      1252},\r
561     {0x4160ade5,        L"BellGothicStdBlack",  L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
562     {0x421976c4,        L"Modern-Regular",      L"Impact",      2,      1252},\r
563     {0x422a7252,        L"Stencil",     L"STIXNonUnicode,Songti SC,Georgia,Baskerville",        0,      1252},\r
564     {0x42c8554f,        L"Fixedsys",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
565     {0x435cb41d,        L"Roman",       L"Arial Narrow",        0,      1252},\r
566     {0x47882383,        L"CourierNew",  L"PCMyungjo,Osaka,Arial Unicode MS,Songti SC",  1,      1252},\r
567     {0x480a2338,        L"BerlinSansFBDemi",    L"STIXNonUnicode,American Typewriter,Avenir Next Condensed Heavy",      0,      1252},\r
568     {0x480bf7a4,        L"CourierStd",  L"Courier New", 0,      1252},\r
569     {0x481ad6ed,        L"VladimirScript",      L"STIXNonUnicode,Avenir Next Condensed,Impact", 8,      1252},\r
570     {0x4911577a,        L"YouYuan",     L"STHeiti,Heiti TC",    1,      936},\r
571     {0x4a788d72,        L"STXingkai",   L"Kaiti SC,Songti SC",  0,      936},\r
572     {0x4bf88566,        L"SegoeCondensed",      L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
573     {0x4ccf51a4,        L"BerlinSansFB-Reg",    L"STIXNonUnicode,American Typewriter,Impact",   0,      1252},\r
574     {0x4ea967ce,        L"GulimChe",    L"Arial Unicode MS,Heiti TC,STFangsong",        1,      1252},\r
575     {0x4f68bd79,        L"LetterGothicStd",     L"Courier New,Andale Mono,Ayuthaya,PCMyungjo,Osaka",    0,      1252},\r
576     {0x51a0d0e6,        L"KozukaGothicPr6NM",   L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
577     {0x531b3dea,        L"BasemicSymbol",       L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
578     {0x5333fd39,        L"CalifornianFB-Reg",   L"American Typewriter,Avenir Next Condensed,Impact",    2,      1252},\r
579     {0x53561a54,        L"FZYTK--GBK1-0",       L"STFangsong,Songti SC,STSong", 0,      936},\r
580     {0x55e0dde6,        L"LucidaSansTypewriter",        L"Menlo,Courier New,Andale Mono",       0,      1252},\r
581     {0x574d4d3d,        L"AdobeArabic", L"Arial Narrow",        0,      1252},\r
582     {0x5792e759,        L"STKaiti",     L"Songti SC,Arial Unicode MS",  0,      936},\r
583     {0x5921978e,        L"LucidaSansUnicode",   L"Lucida Grande,Arial Unicode MS,Menlo",        0,      1252},\r
584     {0x594e2da4,        L"Vrinda",      L"Geeza Pro,Damascus,STIXGeneral,Gill Sans",    0,      1252},\r
585     {0x59baa9a2,        L"KaiTi_GB2312",        L"Hiragino Sans GB,STHeiti",    0,      1252},\r
586     {0x5cfedf4f,        L"BaskOldFace", L"Avenir Next Condensed Heavy,PT Sans,Avenir Next Condensed",   0,      1252},\r
587     {0x5e16ac91,    L"TrajanPro",   L"Arial Narrow,PT Sans Narrow,Damascus",  0,  1252},\r
588     {0x5f97921c,        L"AdobeMyungjoStdM",    L"AppleMyungjo,AppleGothic,Arial Unicode MS",   0,      936},\r
589     {0x5fefbfad,        L"Batang",      L"Arial Unicode MS,Songti SC",  2,      1252},\r
590     {0x605342b9,        L"DotumChe",    L"Arial Unicode MS,Heiti TC",   1,      1252},\r
591     {0x608c5f9a,        L"KaiTi_GB2312",        L"Hiragino Sans GB,STHeiti,Heiti TC",   0,      936},\r
592     {0x61efd0d1,        L"MaturaMTScriptCapitals",      L"Kokonor,Damascus,STIXNonUnicode,STHeiti,Arial Black,Avenir Next Heavy",       0,      1252},\r
593     {0x626608a9,        L"MVBoli",      L"Apple Braille,Geeza Pro,Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
594     {0x630501a3,        L"SmallFonts",  L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
595     {0x65d0e2a9,        L"FZYTK--GBK1-0",       L"STFangsong,Songti SC,STSong", 0,      936},\r
596     {0x669f29e1,        L"FZSTK--GBK1-0",       L"STHeiti,Heiti TC",    0,      936},\r
597     {0x673a9e5f,        L"Tunga",       L"Damascus,STIXNonUnicode,Avenir Next Condensed,Avenir Next Condensed Ultra Light,Futura",      0,      1252},\r
598     {0x691aa4ce,        L"NiagaraSolid",        L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
599     {0x696259b7,        L"Corbel",      L"Cochin,Baskerville,Marion",   0,      1252},\r
600     {0x696ee9be,        L"STXihei",     L"STHeiti,Heiti TC,Songti SC,Arial Unicode MS", 0,      936},\r
601     {0x6c59cf69,        L"Dotum",       L"Arial Unicode MS,Songti SC",  0,      1252},\r
602     {0x707fa561,        L"Gungsuh",     L"Arial Unicode MS,Heiti TC",   2,      1252},\r
603     {0x71416bb2,        L"ZWAdobeF",    L"STIXSizeFourSym,STIXSizeThreeSym,STIXSizeTwoSym,STIXSizeOneSym",      0,      1252},\r
604     {0x71b41801,        L"Verdana",     L"Tahoma,Marion,Apple Symbols,.Helvetica Neue Desk UI,Lucida Grande,Courier New",       0,      1252},\r
605     {0x73f25e4c,        L"PalatinoLinotype",    L"Palatino,Arial Unicode MS",   0,      1252},\r
606     {0x73f4d19f,        L"NiagaraEngraved",     L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
607     {0x74001694,        L"MyriadProBlack",      L"Palatino,Baskerville,Marion,Cochin",  0,      1252},\r
608     {0x74b14d8f,        L"Haettenschweiler",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
609     {0x74cb44ee,        L"NSimSun",     L"STHeiti,Heiti TC,STFangsong", 1,      936},\r
610     {0x76b4d7ff,        L"Shruti",      L"Damascus,STIXNonUnicode,Arial Unicode MS,American Typewriter",        0,      1252},\r
611     {0x788b3533,        L"Webdings",    L"Microsoft Sans Serif,Apple Symbols",  6,      42},\r
612     {0x797dde99,        L"MSSerif",     L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
613     {0x7a0f9e9e,        L"MSMincho",    L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR PL UMing TW MBE,Arial Unicode MS,Apple SD Gothic Neo", 1,      1252},\r
614     {0x7b439caf,        L"OldEnglishTextMT",    L"STIXNonUnicode,Arial Unicode MS,Baskerville,Avenir Next Medium",      0,      1252},\r
615     {0x8213a433,        L"LucidaSans-Typewriter",       L"Comic Sans MS,Avenir Next,Arial Rounded MT Bold",     0,      1252},\r
616     {0x82fec929,        L"AdobeSongStdL",       L"Heiti TC,STHeiti",    0,      936},\r
617     {0x83581825,        L"Modern",      L"Avenir Next Condensed,Impact",        0,      1252},\r
618     {0x835a2823,        L"Algerian",    L"STIXNonUnicode,Baskerville,Avenir Next Medium,American Typewriter",   0,      1252},\r
619     {0x83dab9f5,        L"Script",      L"Arial Narrow",        0,      1252},\r
620     {0x847b56da,        L"Tahoma",      L"Songti SC,Apple Symbols",     0,      1252},\r
621     {0x8a783cb2,        L"SimSun-PUA",  L"STHeiti,Heiti TC,STFangsong", 0,      1252},\r
622     {0x8b5cac0e,        L"Onyx",        L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
623     {0x8c6a499e,        L"Gulim",       L"Arial Unicode MS,Songti SC",  0,      1252},\r
624     {0x8e0af790,        L"JuiceITC",    L"Nadeem,Al Bayan",     0,      1252},\r
625     {0x8e8d43b2,        L"Centaur",     L"Avenir Next Condensed,Noteworthy,Impact",     2,      1252},\r
626     {0x8ee4dcca,        L"BookshelfSymbol7",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
627     {0x90794800,        L"BellGothicStdLight",  L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
628     {0x909b516a,        L"Century",     L"Damascus,Andale Mono,Songti SC,Arial Unicode MS",     2,      1252},\r
629     {0x92ae370d,        L"MSOutlook",   L"Microsoft Sans Serif,Apple Symbols",  4,      42},\r
630     {0x93c9fbf1,        L"LucidaFax",   L"PT Sans Narrow,Papyrus,Kokonor,Geeza Pro,Arial Rounded MT Bold,Lucida Grande,Futura", 2,      1252},\r
631     {0x9565085e,        L"BookAntiqua", L"Palatino,Microsoft Sans Serif,Apple Symbols", 2,      1252},\r
632     {0x9856d95d,        L"AdobeMingStdL",       L"AHiragino Sans GB,Heiti TC,STHeiti",  0,      949},\r
633     {0x9bbadd6b,        L"ColonnaMT",   L"Noteworthy,Avenir Next Condensed,Impact",     0,      1252},\r
634     {0x9cbd16a4,        L"ShowcardGothic-Reg",  L"Arial Unicode MS,Georgia,American Typewriter",        0,      1252},\r
635     {0x9d73008e,        L"MSSansSerif", L"Songti SC,Apple Symbols",     0,      1252},\r
636     {0xa0607db1,        L"GungsuhChe",  L"WenQuanYi Zen Hei Mono,AR PL UMing CN,AR PL UMing HK,AR PL UMing TW,AR PL UMing TW MBE,Arial Unicode MS,Heiti TC,STFangsong", 1,      1252},\r
637     {0xa0bcf6a1,        L"LatinWide",   L"Zapfino,Arial Black,STHeiti", 2,      1252},\r
638     {0xa1429b36,        L"Symbol",      L"Microsoft Sans Serif,Apple Symbols",  6,      42},\r
639     {0xa1fa5abc,        L"Wingdings2",  L"Microsoft Sans Serif,Apple Symbols",  6,      42},\r
640     {0xa1fa5abd,        L"Wingdings3",  L"Microsoft Sans Serif,Apple Symbols",  6,      42},\r
641     {0xa427bad4,        L"InformalRoman-Regular",       L"STIXNonUnicode,Arial Narrow,Avenir Next Condensed Demi Bold", 8,      1252},\r
642     {0xa8b92ece,        L"FZSTK--GBK1-0",       L"STHeiti,Heiti TC,STFangsong", 0,      936},\r
643     {0xa8d83ece,        L"CalifornianFB",       L"American Typewriter,Avenir Next Condensed,Impact",    2,      1252},\r
644     {0xaa3e082c,        L"Kingsoft-Phonetic",   L"STIXVariants,STIXSizeOneSym,Apple Braille",   0,      1252},\r
645     {0xaa6bcabe,        L"HarlowSolidItalic",   L"STIXNonUnicode,Avenir Medium,Avenir Next Medium,Arial Unicode MS",    0,      1252},\r
646     {0xade5337c,        L"MSUIGothic",  L"Arial Unicode MS,Apple SD Gothic Neo",        0,      1252},\r
647     {0xb08dd941,        L"WideLatin",   L"Marion,Papyrus,Nanum Pen Script,Zapf Dingbats,Damascus,Zapfino,Arial Black,STHeiti",  2,      1252},\r
648     {0xb12765e0,    L"ITCLegacySansStdBook",  L"LastResort,.Helvetica Neue Desk UI,Arial Unicode MS,Palatino",   0,  1252},\r
649     {0xb207f05d,        L"PoorRichard", L"Noteworthy,Avenir Next Condensed,Impact",     2,      1252},\r
650     {0xb3bc492f,        L"JuiceITC-Regular",    L"Nadeem,Al Bayan,STIXNonUnicode",      0,      1252},\r
651     {0xb5545399,        L"Marlett",     L"Microsoft Sans Serif,Apple Symbols",  4,      42},\r
652     {0xb5dd1ebb,        L"BritannicBold",       L"Damascus,STIXNonUnicode,Avenir Next Condensed Heavy,PT Sans", 0,      1252},\r
653     {0xb699c1c5,        L"LucidaCalligraphy-Italic",    L"STHeiti,Arial Black", 0,      1252},\r
654     {0xb725d629,        L"TimesNewRoman",       L"Microsoft Sans Serif,Apple Symbols",  2,      1252},\r
655     {0xb7eaebeb,        L"AdobeHeitiStdR",      L"Heiti TC,STHeiti",    0,      936},\r
656     {0xbd29c486,        L"BerlinSansFBDemi-Bold",       L"American Typewriter,Avenir Next Condensed Heavy",     0,      1252},\r
657     {0xbe8a8db4,        L"BookshelfSymbolSeven",        L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
658     {0xc16c0118,        L"AdobeHebrew", L".Helvetica Neue Desk UI,Palatino,American Typewriter",        0,      1252},\r
659     {0xc318b0af,        L"MyriadProLight",      L"Palatino,Baskerville,Marion", 0,      1252},\r
660     {0xc65e5659,        L"CambriaMath", L"Arial Unicode MS",    2,      1252},\r
661     {0xc75c8f05,        L"LucidaConsole",       L"Courier New,Menlo,Andale Mono",       1,      1252},\r
662     {0xca7c35d6,        L"Calibri",     L"Apple Symbols,HeadLineA",     0,      1252},\r
663     {0xcb053f53,        L"MicrosoftYaHei",      L"Arial Unicode MS",    0,      936},\r
664     {0xcb7190f9,        L"Magneto-Bold",        L"Lucida Grande",       0,      1252},\r
665     {0xcca00cc5,        L"System",      L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
666     {0xccad6f76,        L"Jokerman-Regular",    L"Lucida Grande",       0,      1252},\r
667     {0xccc5818c,        L"EuroSign",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
668     {0xcf3d7234,        L"LucidaHandwriting-Italic",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
669     {0xcf7b8fdb,        L"MinionPro",   L"Bell MT,Corbel,Times New Roman,Cambria,Berlin Sans FB",       0,      1252},\r
670     {0xcfe5755f,        L"Simhei",      L"STHeiti,Heiti TC,STFangsong", 1,      936},\r
671     {0xd011f4ee,        L"MSPGothic",   L"Arial Unicode MS,Apple SD Gothic Neo",        0,      1252},\r
672     {0xd060e7ef,        L"Vivaldi",     L"STIXNonUnicode,Arial Unicode MS,Avenir Medium,Avenir Next Medium",    8,      1252},\r
673     {0xd07edec1,        L"FranklinGothic-Medium",       L"Impact,Arial Narrow", 0,      1252},\r
674     {0xd107243f,        L"SimSun",      L"STHeiti,Heiti TC,STFangsong", 0,      936},\r
675     {0xd1881562,        L"ArialNarrow", L"PT Sans Narrow,Apple Symbols",        0,      1252},\r
676     {0xd22b7dce,        L"BodoniMTPosterCompressed",    L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
677     {0xd22bfa60,        L"ComicSansMS", L"Damascus,Georgia,.Helvetica Neue Desk UI,Lucida Grande,Arial Unicode MS",     8,      1252},\r
678     {0xd3bd0e35,        L"Bauhaus93",   L"STIXNonUnicode,Arial Unicode MS,Avenir Next,Avenir",  0,      1252},\r
679     {0xd429ee7a,        L"STFangsong",  L"Songti SC,Arial Unicode MS",  0,      936},\r
680     {0xd6679c12,        L"BernardMTCondensed",  L"Impact,Avenir Next Condensed Demi Bold",      0,      1252},\r
681     {0xd8e8a027,        L"LucidaSans",  L"Arial Narrow,Khmer MN,Kokonor,Damascus,Microsoft Sans Serif,Apple Symbols",   0,      1252},\r
682     {0xd9fe7761,        L"HighTowerText-Reg",   L"STIXGeneral,.Helvetica Neue Desk UI,Trebuchet MS",    2,      1252},\r
683     {0xda7e551e,        L"STSong",      L"Arial Unicode MS",    0,      936},\r
684     {0xdaa6842d,        L"STZhongsong", L"STFangsong,Songti SC,STSong", 0,      936},\r
685     {0xdaaab93f,        L"STFangsong",  L"Songti SC,Arial Unicode MS",  0,      936},\r
686     {0xdaeb0713,        L"STSong",      L"Songti SC,Arial Unicode MS",  0,      936},\r
687     {0xdafedbef,        L"STCaiyun",    L"Kaiti SC,Songti SC,STHeiti",  0,      936},\r
688     {0xdb00a3d9,        L"Broadway",    L"Papyrus,STIXNonUnicode,Arial Black,Avenir Next Heavy,Heiti TC",       0,      1252},\r
689     {0xdb1f5ad4,        L"STXinwei",    L"Kaiti SC,Songti SC,STHeiti",  0,      936},\r
690     {0xdb326e7f,        L"STKaiti",     L"Songti SC,Arial Unicode MS",  0,      936},\r
691     {0xdb69595a,        L"STHupo",      L"Kaiti SC,Songti SC,STHeiti",  0,      936},\r
692     {0xdba0082c,        L"STXihei",     L"Songti SC,Arial Unicode MS",  0,      936},\r
693     {0xdbd0ab18,        L"STXingkai",   L"Kaiti SC,Songti SC",  0,      936},\r
694     {0xdc1a7db1,        L"STLiti",      L"Kaiti SC,Songti SC",  0,      936},\r
695     {0xdc33075f,        L"KristenITC-Regular",  L"STIXNonUnicode,Damascus,Songti SC,STSong",    8,      1252},\r
696     {0xdcc7009c,        L"Harrington",  L"STIXNonUnicode,Avenir Next Condensed Heavy,Noteworthy",       0,      1252},\r
697     {0xdd712466,        L"ArialBlack",  L"Geeza Pro,Damascus,Songti SC,STSong", 0,      1252},\r
698     {0xdde87b3e,        L"Impact",      L"Arial Narrow,Marion", 0,      1252},\r
699     {0xdf69fb32,        L"SnapITC",     L"Arial Narrow,PT Sans Narrow,Marion,STHeiti,Arial Black",      0,      1252},\r
700     {0xdf8b25e8,        L"CenturyGothic",       L"Damascus,Andale Mono,Songti SC,Arial Unicode MS",     0,      1252},\r
701     {0xe0f705c0,        L"KristenITC",  L"Songti SC,STSong",    8,      1252},\r
702     {0xe1427573,        L"Raavi",       L"Damascus,STIXNonUnicode,Marion,Papyrus,Avenir Next Condensed Heavy,American Typewriter",      0,      1252},\r
703     {0xe2cea0cb,        L"Magneto",     L"STIXNonUnicode,Damascus,Geeza Pro,Lucida Grande,Georgia,Heiti TC",    0,      1252},\r
704     {0xe36a9e17,        L"Ravie",       L"STHeiti,Arial Black", 0,      1252},\r
705     {0xe433f8e2,        L"Parchment",   L"Microsoft Sans Serif,Apple Symbols",  8,      1252},\r
706     {0xe43dff4a,        L"Wingdings",   L"Microsoft Sans Serif,Apple Symbols",  4,      42},\r
707     {0xe4e2c405,        L"MTExtra",     L"Microsoft Sans Serif,Apple Symbols",  6,      42},\r
708     {0xe618cc35,        L"InformalRoman",       L"Arial Narrow",        8,      1252},\r
709     {0xe6c27ffc,        L"Mistral",     L"Apple Symbols",       8,      1252},\r
710     {0xe7ebf4b9,        L"Courier",     L"Courier New", 0,      1252},\r
711     {0xe8bc4a9d,        L"MSReferenceSpecialty",        L"Microsoft Sans Serif,Apple Symbols",  0,      1252},\r
712     {0xe90fb013,        L"TempusSansITC",       L"STIXNonUnicode,Microsoft Sans Serif,Avenir Light",    0,      1252},\r
713     {0xec637b42,        L"Consolas",    L"AR PL UKai CN,AR PL UKai HK,AR PL UKai TW,AR PL UKai TW MBE,AR PL UMing CN,AR PL UMing HK,Microsoft Sans Serif,Tahoma",       1,      1252},\r
714     {0xed3a683b,        L"STXinwei",    L"Kaiti SC,Songti SC,", 0,      936},\r
715     {0xef264cd1,        L"LucidaHandwriting",   L"Arial Narrow,Avenir Next Condensed Demi Bold,Avenir Next Condensed,Avenir Next Condensed Medium,STHeiti,Arial Black", 0,      1252},\r
716     {0xf086bca2,        L"BaskervilleOldFace",  L"STIXNonUnicode,Avenir Next Condensed Heavy,PT Sans",  0,      1252},\r
717     {0xf1028030,        L"Mangal",      L"Arial Unicode MS,Microsoft Sans Serif,Arial Narrow,Tahoma",   2,      1252},\r
718     {0xf1da7eb9,        L"ShowcardGothic",      L"Papyrus,Arial Unicode MS,Georgia,American Typewriter",        0,      1252},\r
719     {0xf210f06a,        L"ArialMT",     L"Arial Unicode MS,Arial Narrow,STIXNonUnicode,Damascus,Avenir Next Condensed Demi Bold,Avenir Next Condensed Medium,Avenir Next Condensed",    0,      1252},\r
720     {0xf477f16a,        L"Latha",       L"Arial Narrow,Damascus,STIXNonUnicode,American Typewriter",    0,      1252},\r
721     {0xf616f3dd,        L"LiSu",        L"STHeiti,Heiti TC,STFangsong", 1,      936},\r
722     {0xfa479aa6,        L"MicrosoftYaHei",      L"Arial Unicode MS",    0,      936},\r
723     {0xfcd19697,        L"BookmanOldStyle",     L"Geeza Pro,Damascus,Andale Mono,Songti SC,Arial Unicode MS",   0,      1252},\r
724     {0xfe209a82,        L"LucidaCalligraphy",   L"Kokonor,Damascus,STIXNonUnicode,STHeiti,Arial Black", 0,      1252},\r
725     {0xfef135f8,        L"AdobeHeitiStd-Regular",       L"Heiti TC,STHeiti",    0,      936},\r
726 };\r
727 #elif _FXM_PLATFORM_ == _FXM_PLATFORM_ANDROID_\r
728 static const XFA_FONTINFO g_XFAFontsMap[] = {\r
729     {0x01d5d33e,        L"SimSun",      L"Droid Sans Fallback", 0,      936},\r
730     {0x01e4f102,        L"YouYuan",     L"Droid Sans Fallback", 1,      936},\r
731     {0x030549dc,        L"LiSu",        L"Droid Sans Fallback", 1,      936},\r
732     {0x032edd44,        L"Simhei",      L"Droid Sans Fallback", 1,      936},\r
733     {0x03eac6fc,        L"PoorRichard-Regular", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback,Droid Arabic Naskh,Droid Sans Ethiopic",       2,      1252},\r
734     {0x03ed90e6,        L"Nina",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
735     {0x077b56b3,        L"KingsoftPhoneticPlain",       L"Droid Sans Thai,Droid Sans Armenian,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans Fallback",      0,      1252},\r
736     {0x078ed524,        L"MicrosoftSansSerif",  L"Droid Sans Fallback", 0,      1252},\r
737     {0x089b18a9,        L"Arial",       L"Droid Sans Fallback", 0,      1252},\r
738     {0x0b2cad72,        L"MonotypeCorsiva",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
739     {0x0bb003e7,        L"Kartika",     L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   2,      1252},\r
740     {0x0bb469df,        L"VinerHandITC",        L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
741     {0x0bc1a851,        L"SegoeUI",     L"Droid Sans Fallback", 0,      1252},\r
742     {0x0c112ebd,        L"KozukaGothicPro-VIM", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
743     {0x0cfcb9c1,        L"AdobeThai",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      847},\r
744     {0x0e7de0f9,        L"Playbill",    L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   0,      1252},\r
745     {0x0eff47c3,        L"STHupo",      L"Droid Sans Fallback", 0,      936},\r
746     {0x107ad374,        L"Constantia",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
747     {0x12194c2d,        L"KunstlerScript",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
748     {0x135ef6a1,        L"MinionProSmBd",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
749     {0x158c4049,        L"Garamond",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
750     {0x160ecb24,        L"STZhongsong", L"Droid Sans Fallback", 0,      936},\r
751     {0x161ed07e,        L"MSGothic",    L"Droid Sans Fallback", 1,      1252},\r
752     {0x171d1ed1,        L"SnapITC-Regular",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
753     {0x18d1188f,        L"Cambria",     L"Droid Sans Fallback", 2,      1252},\r
754     {0x18eaf350,        L"ArialUnicodeMS",      L"Droid Sans Fallback", 0,      936},\r
755     {0x1a92d115,        L"MingLiU",     L"Droid Sans Fallback", 1,      1252},\r
756     {0x1cc217c6,        L"TrebuchetMS", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
757     {0x1d649596,        L"BasemicTimes",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
758     {0x1e34ee60,        L"BellMT",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
759     {0x1eb36945,        L"CooperBlack", L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
760     {0x1ef7787d,        L"BatangChe",   L"Droid Sans Fallback", 1,      1252},\r
761     {0x20b3bd3a,        L"BrushScriptMT",       L"Droid Arabic Naskh,Droid Sans Ethiopic",      8,      1252},\r
762     {0x220877aa,        L"Candara",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
763     {0x22135007,        L"FreestyleScript-Regular",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
764     {0x251059c3,        L"Chiller",     L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif",   0,      1252},\r
765     {0x25bed6dd,        L"MSReferenceSansSerif",        L"Droid Sans Fallback", 0,      1252},\r
766     {0x28154c81,        L"Parchment-Regular",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
767     {0x29711eb9,        L"STLiti",      L"Droid Sans Fallback", 0,      936},\r
768     {0x2b1993b4,        L"Basemic",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
769     {0x2b316339,        L"NiagaraSolid-Reg",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
770     {0x2c147529,        L"FootlightMTLight",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
771     {0x2c198928,        L"HarlowSolid", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
772     {0x2c6ac6b2,        L"LucidaBright",        L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto",   2,      1252},\r
773     {0x2c9f38e2,        L"KozukaMinchoPro-VIR", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
774     {0x2d5a47b0,        L"STCaiyun",    L"Droid Sans Fallback", 0,      936},\r
775     {0x2def26bf,        L"BernardMT-Condensed", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
776     {0x2fd8930b,        L"KozukaMinchoPr6NR",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
777     {0x3115525a,        L"FangSong_GB2312",     L"Droid Sans Fallback", 0,      1252},\r
778     {0x31327817,        L"MyriadPro",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
779     {0x32244975,    L"Helvetica", L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto",  0,   1252},\r
780     {0x32ac995c,        L"Terminal",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
781     {0x338d648a,        L"NiagaraEngraved-Reg", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
782     {0x33bb65f2,        L"Sylfaen",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
783     {0x3402c30e,        L"MSPMincho",   L"Droid Sans Fallback", 2,      1252},\r
784     {0x3412bf31,        L"SimSun-PUA",  L"Droid Sans Fallback", 0,      936},\r
785     {0x36eb39b9,        L"BerlinSansFB",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
786     {0x36f42055,        L"UniversATT",  L"Microsoft Sans Serif",        0,      1252},\r
787     {0x3864c4f6,        L"HighTowerText",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
788     {0x3a257d03,        L"FangSong_GB2312",     L"Droid Sans Fallback", 0,      1252},\r
789     {0x3cdae668,        L"FreestyleScript",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
790     {0x3d55aed7,        L"Jokerman",    L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
791     {0x3d5b4385,        L"PMingLiU",    L"Droid Sans Fallback", 2,      1252},\r
792     {0x3d9b7669,        L"EstrangeloEdessa",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
793     {0x3e532d74,        L"FranklinGothicMedium",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
794     {0x3e6aa32d,        L"NSimSun",     L"Droid Sans Fallback", 1,      936},\r
795     {0x3f6c36a8,        L"Gautami",     L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",       0,      1252},\r
796     {0x3ff32662,        L"Chiller-Regular",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
797     {0x409de312,        L"ModernNo.20", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
798     {0x41443c5e,        L"Georgia",     L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
799     {0x4160ade5,        L"BellGothicStdBlack",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
800     {0x421976c4,        L"Modern-Regular",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
801     {0x422a7252,        L"Stencil",     L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
802     {0x42c8554f,        L"Fixedsys",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
803     {0x435cb41d,        L"Roman",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
804     {0x47882383,        L"CourierNew",  L"Droid Sans Fallback", 1,      1252},\r
805     {0x480a2338,        L"BerlinSansFBDemi",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
806     {0x480bf7a4,        L"CourierStd",  L"Droid Sans Fallback", 0,      1252},\r
807     {0x481ad6ed,        L"VladimirScript",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
808     {0x4911577a,        L"YouYuan",     L"Droid Sans Fallback", 1,      936},\r
809     {0x4a788d72,        L"STXingkai",   L"Droid Sans Fallback", 0,      936},\r
810     {0x4bf88566,        L"SegoeCondensed",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
811     {0x4ccf51a4,        L"BerlinSansFB-Reg",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
812     {0x4ea967ce,        L"GulimChe",    L"Droid Sans Fallback", 1,      1252},\r
813     {0x4f68bd79,        L"LetterGothicStd",     L"Droid Sans Mono,Droid Arabic Naskh,Droid Sans Ethiopic,Droid Sans Mono,Droid Serif,Droid Sans Fallback",      0,      1252},\r
814     {0x51a0d0e6,        L"KozukaGothicPr6NM",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
815     {0x531b3dea,        L"BasemicSymbol",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
816     {0x5333fd39,        L"CalifornianFB-Reg",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
817     {0x53561a54,        L"FZYTK--GBK1-0",       L"Droid Sans Fallback", 0,      936},\r
818     {0x55e0dde6,        L"LucidaSansTypewriter",        L"Droid Sans Mono,Droid Arabic Naskh,Droid Sans Ethiopic",      0,      1252},\r
819     {0x574d4d3d,        L"AdobeArabic", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
820     {0x5792e759,        L"STKaiti",     L"Droid Sans Fallback", 0,      936},\r
821     {0x5921978e,        L"LucidaSansUnicode",   L"Droid Sans Fallback", 0,      1252},\r
822     {0x594e2da4,        L"Vrinda",      L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   0,      1252},\r
823     {0x59baa9a2,        L"KaiTi_GB2312",        L"Droid Sans Fallback", 0,      1252},\r
824     {0x5cfedf4f,        L"BaskOldFace", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
825     {0x5f97921c,        L"AdobeMyungjoStdM",    L"Droid Sans Fallback", 0,      936},\r
826     {0x5fefbfad,        L"Batang",      L"Droid Sans Fallback", 2,      1252},\r
827     {0x605342b9,        L"DotumChe",    L"Droid Sans Fallback", 1,      1252},\r
828     {0x608c5f9a,        L"KaiTi_GB2312",        L"Droid Sans Fallback", 0,      936},\r
829     {0x61efd0d1,        L"MaturaMTScriptCapitals",      L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   0,      1252},\r
830     {0x626608a9,        L"MVBoli",      L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   0,      1252},\r
831     {0x630501a3,        L"SmallFonts",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
832     {0x65d0e2a9,        L"FZYTK--GBK1-0",       L"Droid Sans Fallback", 0,      936},\r
833     {0x669f29e1,        L"FZSTK--GBK1-0",       L"Droid Sans Fallback", 0,      936},\r
834     {0x673a9e5f,        L"Tunga",       L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",       0,      1252},\r
835     {0x691aa4ce,        L"NiagaraSolid",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
836     {0x696259b7,        L"Corbel",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
837     {0x696ee9be,        L"STXihei",     L"Droid Sans Fallback", 0,      936},\r
838     {0x6c59cf69,        L"Dotum",       L"Droid Sans Fallback", 0,      1252},\r
839     {0x707fa561,        L"Gungsuh",     L"Droid Sans Fallback", 2,      1252},\r
840     {0x71416bb2,        L"ZWAdobeF",    L"Droid Arabic Naskh,Droid Sans Armenian,Droid Sans Ethiopic,Droid Sans Georgian,Droid Sans Hebrew,Droid Sans Thai",    0,      1252},\r
841     {0x71b41801,        L"Verdana",     L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
842     {0x73f25e4c,        L"PalatinoLinotype",    L"Droid Sans Fallback", 0,      1252},\r
843     {0x73f4d19f,        L"NiagaraEngraved",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
844     {0x74001694,        L"MyriadProBlack",      L"Book Antiqua,Constantia,Dotum,Georgia",       0,      1252},\r
845     {0x74b14d8f,        L"Haettenschweiler",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
846     {0x74cb44ee,        L"NSimSun",     L"Droid Sans Fallback", 1,      936},\r
847     {0x76b4d7ff,        L"Shruti",      L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   0,      1252},\r
848     {0x788b3533,        L"Webdings",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      6,      42},\r
849     {0x797dde99,        L"MSSerif",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
850     {0x7a0f9e9e,        L"MSMincho",    L"Droid Sans Fallback", 1,      1252},\r
851     {0x7b439caf,        L"OldEnglishTextMT",    L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
852     {0x8213a433,        L"LucidaSans-Typewriter",       L"Droid Sans Mono,Droid Serif,Roboto,Droid Sans Fallback",      0,      1252},\r
853     {0x82fec929,        L"AdobeSongStdL",       L"Droid Sans Fallback", 0,      936},\r
854     {0x83581825,        L"Modern",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
855     {0x835a2823,        L"Algerian",    L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
856     {0x83dab9f5,        L"Script",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
857     {0x847b56da,        L"Tahoma",      L"Droid Sans Fallback", 0,      1252},\r
858     {0x8a783cb2,        L"SimSun-PUA",  L"Droid Sans Fallback", 0,      1252},\r
859     {0x8b5cac0e,        L"Onyx",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
860     {0x8c6a499e,        L"Gulim",       L"Droid Sans Fallback", 0,      1252},\r
861     {0x8e0af790,        L"JuiceITC",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
862     {0x8e8d43b2,        L"Centaur",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
863     {0x8ee4dcca,        L"BookshelfSymbol7",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
864     {0x90794800,        L"BellGothicStdLight",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
865     {0x909b516a,        L"Century",     L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
866     {0x92ae370d,        L"MSOutlook",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      4,      42},\r
867     {0x93c9fbf1,        L"LucidaFax",   L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   2,      1252},\r
868     {0x9565085e,        L"BookAntiqua", L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
869     {0x9856d95d,        L"AdobeMingStdL",       L"Droid Sans Fallback", 0,      949},\r
870     {0x9bbadd6b,        L"ColonnaMT",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
871     {0x9cbd16a4,        L"ShowcardGothic-Reg",  L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallbac",       0,      1252},\r
872     {0x9d73008e,        L"MSSansSerif", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
873     {0xa0607db1,        L"GungsuhChe",  L"Droid Sans Fallback", 1,      1252},\r
874     {0xa0bcf6a1,        L"LatinWide",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
875     {0xa1429b36,        L"Symbol",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      6,      42},\r
876     {0xa1fa5abc,        L"Wingdings2",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      6,      42},\r
877     {0xa1fa5abd,        L"Wingdings3",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      6,      42},\r
878     {0xa427bad4,        L"InformalRoman-Regular",       L"Droid Arabic Naskh,Droid Sans Ethiopic",      8,      1252},\r
879     {0xa8b92ece,        L"FZSTK--GBK1-0",       L"Droid Sans Fallback", 0,      936},\r
880     {0xa8d83ece,        L"CalifornianFB",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
881     {0xaa3e082c,        L"Kingsoft-Phonetic",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
882     {0xaa6bcabe,        L"HarlowSolidItalic",   L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
883     {0xade5337c,        L"MSUIGothic",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
884     {0xb08dd941,        L"WideLatin",   L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   2,      1252},\r
885     {0xb207f05d,        L"PoorRichard", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
886     {0xb3bc492f,        L"JuiceITC-Regular",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
887     {0xb5545399,        L"Marlett",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      4,      42},\r
888     {0xb5dd1ebb,        L"BritannicBold",       L"Droid Arabic Naskh,Droid Sans Ethiopic",      0,      1252},\r
889     {0xb699c1c5,        L"LucidaCalligraphy-Italic",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
890     {0xb725d629,        L"TimesNewRoman",       L"Droid Sans Fallback", 2,      1252},\r
891     {0xb7eaebeb,        L"AdobeHeitiStdR",      L"Droid Sans Fallback", 0,      936},\r
892     {0xbd29c486,        L"BerlinSansFBDemi-Bold",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
893     {0xbe8a8db4,        L"BookshelfSymbolSeven",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
894     {0xc16c0118,        L"AdobeHebrew", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback,Droid Arabic Naskh,Droid Sans Ethiopic",       0,      1252},\r
895     {0xc318b0af,        L"MyriadProLight",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
896     {0xc65e5659,        L"CambriaMath", L"Droid Sans Fallback", 2,      1252},\r
897     {0xc75c8f05,        L"LucidaConsole",       L"Droid Sans Mono,Droid Serif,Roboto,Droid Sans Fallback",      1,      1252},\r
898     {0xca7c35d6,        L"Calibri",     L"Droid Sans Fallback", 0,      1252},\r
899     {0xcb053f53,        L"MicrosoftYaHei",      L"Droid Sans Fallback", 0,      936},\r
900     {0xcb7190f9,        L"Magneto-Bold",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
901     {0xcca00cc5,        L"System",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
902     {0xccad6f76,        L"Jokerman-Regular",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
903     {0xccc5818c,        L"EuroSign",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
904     {0xcf3d7234,        L"LucidaHandwriting-Italic",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
905     {0xcf7b8fdb,        L"MinionPro",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
906     {0xcfe5755f,        L"Simhei",      L"Droid Sans Fallback", 1,      936},\r
907     {0xd011f4ee,        L"MSPGothic",   L"Droid Sans Fallback", 0,      1252},\r
908     {0xd060e7ef,        L"Vivaldi",     L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
909     {0xd07edec1,        L"FranklinGothic-Medium",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
910     {0xd107243f,        L"SimSun",      L"Droid Sans Fallback", 0,      936},\r
911     {0xd1881562,        L"ArialNarrow", L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
912     {0xd22b7dce,        L"BodoniMTPosterCompressed",    L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
913     {0xd22bfa60,        L"ComicSansMS", L"Droid Serif,Roboto,Droid Sans Fallback",      8,      1252},\r
914     {0xd3bd0e35,        L"Bauhaus93",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
915     {0xd429ee7a,        L"STFangsong",  L"Droid Sans Fallback", 0,      936},\r
916     {0xd6679c12,        L"BernardMTCondensed",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
917     {0xd8e8a027,        L"LucidaSans",  L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto",   0,      1252},\r
918     {0xd9fe7761,        L"HighTowerText-Reg",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      2,      1252},\r
919     {0xda7e551e,        L"STSong",      L"Droid Sans Fallback", 0,      936},\r
920     {0xdaa6842d,        L"STZhongsong", L"Droid Sans Fallback", 0,      936},\r
921     {0xdaaab93f,        L"STFangsong",  L"Droid Sans Fallback", 0,      936},\r
922     {0xdaeb0713,        L"STSong",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      936},\r
923     {0xdafedbef,        L"STCaiyun",    L"Droid Sans Fallback", 0,      936},\r
924     {0xdb00a3d9,        L"Broadway",    L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
925     {0xdb1f5ad4,        L"STXinwei",    L"Droid Sans Fallback", 0,      936},\r
926     {0xdb326e7f,        L"STKaiti",     L"Droid Sans Fallback", 0,      936},\r
927     {0xdb69595a,        L"STHupo",      L"Droid Sans Fallback", 0,      936},\r
928     {0xdba0082c,        L"STXihei",     L"Droid Sans Fallback", 0,      936},\r
929     {0xdbd0ab18,        L"STXingkai",   L"Droid Sans Fallback", 0,      936},\r
930     {0xdc1a7db1,        L"STLiti",      L"Droid Sans Fallback", 0,      936},\r
931     {0xdc33075f,        L"KristenITC-Regular",  L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto",   8,      1252},\r
932     {0xdcc7009c,        L"Harrington",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
933     {0xdd712466,        L"ArialBlack",  L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
934     {0xdde87b3e,        L"Impact",      L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
935     {0xdf69fb32,        L"SnapITC",     L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   0,      1252},\r
936     {0xdf8b25e8,        L"CenturyGothic",       L"Droid Serif,Roboto,Droid Serif,Droid Sans Mono",      0,      1252},\r
937     {0xe0f705c0,        L"KristenITC",  L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto",   8,      1252},\r
938     {0xe1427573,        L"Raavi",       L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   0,      1252},\r
939     {0xe2cea0cb,        L"Magneto",     L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   0,      1252},\r
940     {0xe36a9e17,        L"Ravie",       L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   0,      1252},\r
941     {0xe433f8e2,        L"Parchment",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
942     {0xe43dff4a,        L"Wingdings",   L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      4,      42},\r
943     {0xe4e2c405,        L"MTExtra",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      6,      42},\r
944     {0xe618cc35,        L"InformalRoman",       L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif",   8,      1252},\r
945     {0xe6c27ffc,        L"Mistral",     L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      8,      1252},\r
946     {0xe7ebf4b9,        L"Courier",     L"Droid Sans Fallback", 0,      1252},\r
947     {0xe8bc4a9d,        L"MSReferenceSpecialty",        L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
948     {0xe90fb013,        L"TempusSansITC",       L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
949     {0xec637b42,        L"Consolas",    L"Droid Sans Fallback", 1,      1252},\r
950     {0xed3a683b,        L"STXinwei",    L"Droid Sans Fallback", 0,      936},\r
951     {0xef264cd1,        L"LucidaHandwriting",   L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   0,      1252},\r
952     {0xf086bca2,        L"BaskervilleOldFace",  L"Roboto,Droid Serif,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
953     {0xf1028030,        L"Mangal",      L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   2,      1252},\r
954     {0xf1da7eb9,        L"ShowcardGothic",      L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallbac",       0,      1252},\r
955     {0xf210f06a,        L"ArialMT",     L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif",   0,      1252},\r
956     {0xf477f16a,        L"Latha",       L"Droid Arabic Naskh,Droid Sans Ethiopic,Roboto,Droid Serif,Droid Sans Mono",   0,      1252},\r
957     {0xf616f3dd,        L"LiSu",        L"Droid Sans Fallback", 1,      936},\r
958     {0xfa479aa6,        L"MicrosoftYaHei",      L"Droid Sans Fallback", 0,      936},\r
959     {0xfcd19697,        L"BookmanOldStyle",     L"Droid Serif,Roboto,Droid Sans Mono,Droid Sans Fallback",      0,      1252},\r
960     {0xfe209a82,        L"LucidaCalligraphy",   L"Droid Arabic Naskh,Droid Sans Ethiopic,Droid Serif,Roboto,Droid Sans Mono",   0,      1252},\r
961     {0xfef135f8,        L"AdobeHeitiStd-Regular",       L"Droid Sans Fallback", 0,      936},\r
962 };\r
963 #endif\r
964 void XFA_LocalFontNameToEnglishName(FX_WSTR wsLocalName, CFX_WideString &wsEnglishName)\r
965 {\r
966     wsEnglishName = wsLocalName;\r
967 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ || _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_ || _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_ || _FXM_PLATFORM_ ==  _FXM_PLATFORM_ANDROID_\r
968     FX_DWORD dwLocalNameHash = FX_HashCode_String_GetW(wsLocalName.GetPtr(), wsLocalName.GetLength(), TRUE);\r
969     int32_t iStart = 0;\r
970     int32_t iEnd = sizeof(g_XFAFontsMap) / sizeof(XFA_FONTINFO) - 1;\r
971     int32_t iMid = 0;\r
972     do {\r
973         iMid = (iStart + iEnd) / 2;\r
974         FX_DWORD dwFontNameHash = g_XFAFontsMap[iMid].dwFontNameHash;\r
975         if (dwFontNameHash == dwLocalNameHash) {\r
976             wsEnglishName = g_XFAFontsMap[iMid].pPsName;\r
977             break;\r
978         } else if (dwFontNameHash < dwLocalNameHash) {\r
979             iStart = iMid + 1;\r
980         } else {\r
981             iEnd = iMid - 1;\r
982         }\r
983     } while (iEnd >= iStart);\r
984 #endif\r
985 }\r
986 const XFA_FONTINFO* XFA_GetFontINFOByFontName(FX_WSTR wsFontName)\r
987 {\r
988 #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ || _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_ || _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_ || _FXM_PLATFORM_ ==  _FXM_PLATFORM_ANDROID_\r
989     CFX_WideString wsFontNameTemp = wsFontName;\r
990     wsFontNameTemp.Remove(L' ');\r
991     FX_DWORD dwCurFontNameHash = FX_HashCode_String_GetW(wsFontNameTemp, wsFontNameTemp.GetLength(), TRUE);\r
992     int32_t iStart = 0;\r
993     int32_t iEnd = sizeof(g_XFAFontsMap) / sizeof(XFA_FONTINFO) - 1;\r
994     int32_t iMid = 0;\r
995     const XFA_FONTINFO *pFontInfo = NULL;\r
996     do {\r
997         iMid = (iStart + iEnd) / 2;\r
998         FX_DWORD dwFontNameHash = g_XFAFontsMap[iMid].dwFontNameHash;\r
999         if (dwFontNameHash == dwCurFontNameHash) {\r
1000             pFontInfo = &g_XFAFontsMap[iMid];\r
1001             break;\r
1002         } else if (dwFontNameHash < dwCurFontNameHash) {\r
1003             iStart = iMid + 1;\r
1004         } else {\r
1005             iEnd = iMid - 1;\r
1006         }\r
1007     } while (iEnd >= iStart);\r
1008     return pFontInfo;\r
1009 #else\r
1010     return NULL;\r
1011 #endif\r
1012 }\r
1013 // static\r
1014 IXFA_FontMgr* IXFA_FontMgr::CreateDefault()\r
1015 {\r
1016     return FX_NEW CXFA_DefFontMgr;\r
1017 }\r
1018 // virtual\r
1019 IXFA_FontMgr::~IXFA_FontMgr()\r
1020 {\r
1021 }\r
1022 CXFA_DefFontMgr::~CXFA_DefFontMgr()\r
1023 {\r
1024     int32_t iCounts = m_CacheFonts.GetSize();\r
1025     for (int32_t i = 0; i < iCounts; i++) {\r
1026         ((IFX_Font*)m_CacheFonts[i])->Release();\r
1027     }\r
1028     m_CacheFonts.RemoveAll();\r
1029 }\r
1030 #define _FXFA_USEGASFONTMGR_\r
1031 IFX_Font* CXFA_DefFontMgr::GetFont(IXFA_Doc* hDoc, FX_WSTR wsFontFamily, FX_DWORD dwFontStyles, FX_WORD wCodePage )\r
1032 {\r
1033     CFX_WideString wsFontName = wsFontFamily;\r
1034     IFX_FontMgr* pFDEFontMgr = ((CXFA_FFDoc*)hDoc)->GetApp()->GetFDEFontMgr();\r
1035 #ifdef _FXFA_USEGASFONTMGR_\r
1036     const XFA_FONTINFO *pCurFont = NULL;\r
1037     FX_BOOL bGetFontInfo = TRUE;\r
1038     IFX_Font* pFont = pFDEFontMgr->LoadFont((FX_LPCWSTR)wsFontName, dwFontStyles, wCodePage);\r
1039 #else\r
1040     const XFA_FONTINFO *pCurFont = XFA_GetFontINFOByFontName(wsFontName);\r
1041     FX_BOOL bGetFontInfo = FALSE;\r
1042     IFX_Font* pFont = IFX_Font::LoadFont((FX_LPCWSTR)wsFontName, dwFontStyles | FX_FONTSTYLE_ExactMatch, pCurFont ? pCurFont->wCodePage : wCodePage, pFDEFontMgr);\r
1043 #endif\r
1044     if (!pFont && hDoc) {\r
1045         if (bGetFontInfo) {\r
1046             pCurFont = XFA_GetFontINFOByFontName(wsFontName);\r
1047         }\r
1048         if (pCurFont != NULL && pCurFont->pReplaceFont != NULL) {\r
1049             FX_DWORD dwStyle = 0;\r
1050             if (dwFontStyles & FX_FONTSTYLE_Bold) {\r
1051                 dwStyle |= FX_FONTSTYLE_Bold;\r
1052             }\r
1053             if (dwFontStyles & FX_FONTSTYLE_Italic) {\r
1054                 dwStyle |= FX_FONTSTYLE_Italic;\r
1055             }\r
1056             FX_LPCWSTR pReplace = pCurFont->pReplaceFont;\r
1057             int32_t iLength = FXSYS_wcslen(pReplace);\r
1058             while (iLength > 0) {\r
1059                 FX_LPCWSTR pNameText = pReplace;\r
1060                 while (*pNameText != L',' && iLength > 0) {\r
1061                     pNameText++;\r
1062                     iLength--;\r
1063                 }\r
1064                 CFX_WideString wsReplace = CFX_WideString(pReplace, pNameText - pReplace);\r
1065 #ifdef _FXFA_USEGASFONTMGR_\r
1066                 pFont = pFDEFontMgr->LoadFont(wsReplace, dwStyle, wCodePage);\r
1067 #else\r
1068                 pFont = IFX_Font::LoadFont((FX_LPCWSTR)wsReplace, dwStyle | FX_FONTSTYLE_ExactMatch, pCurFont->wCodePage, pFDEFontMgr);\r
1069 #endif\r
1070                 if (pFont != NULL) {\r
1071                     break;\r
1072                 }\r
1073                 iLength--;\r
1074                 pNameText++;\r
1075                 pReplace = pNameText;\r
1076             }\r
1077         }\r
1078     }\r
1079     if (pFont) {\r
1080         m_CacheFonts.Add(pFont);\r
1081     }\r
1082     return pFont;\r
1083 }\r
1084 IFX_Font* CXFA_DefFontMgr::GetDefaultFont(IXFA_Doc* hDoc, FX_WSTR wsFontFamily, FX_DWORD dwFontStyles, FX_WORD wCodePage)\r
1085 {\r
1086     IFX_FontMgr* pFDEFontMgr = ((CXFA_FFDoc*)hDoc)->GetApp()->GetFDEFontMgr();\r
1087 #ifdef _FXFA_USEGASFONTMGR_\r
1088     IFX_Font* pFont = pFDEFontMgr->LoadFont(L"Arial Narrow", dwFontStyles, wCodePage);\r
1089 #else\r
1090     const XFA_FONTINFO *pCurFont = XFA_GetFontINFOByFontName(wsFontFamily);\r
1091     IFX_Font* pFont = IFX_Font::LoadFont(L"Arial Narrow", dwFontStyles, pCurFont ? pCurFont->wCodePage : 1252, pFDEFontMgr);\r
1092 #endif\r
1093     if (!pFont)\r
1094 #ifdef _FXFA_USEGASFONTMGR_\r
1095         pFont = pFDEFontMgr->LoadFont((FX_LPCWSTR)NULL, dwFontStyles, wCodePage);\r
1096 #else\r
1097         pFont = IFX_Font::LoadFont((FX_LPCWSTR)NULL, dwFontStyles, pCurFont ? pCurFont->wCodePage : 1252, pFDEFontMgr);\r
1098 #endif\r
1099     FXSYS_assert(pFont != NULL);\r
1100     if (pFont) {\r
1101         m_CacheFonts.Add(pFont);\r
1102     }\r
1103     return pFont;\r
1104 }\r
1105 struct XFA_PDFFONTNAME {\r
1106     FX_LPCSTR lpPsName;\r
1107     FX_LPCSTR lpNormal;\r
1108     FX_LPCSTR lpBold;\r
1109     FX_LPCSTR lpItalic;\r
1110     FX_LPCSTR lpBoldItalic;\r
1111 };\r
1112 const XFA_PDFFONTNAME g_XFAPDFFontName[] = {\r
1113     {"Adobe PI Std", "AdobePIStd", "AdobePIStd", "AdobePIStd", "AdobePIStd"},\r
1114     {"Myriad Pro Light", "MyriadPro-Light", "MyriadPro-Semibold", "MyriadPro-LightIt", "MyriadPro-SemiboldIt"},\r
1115 };\r
1116 CXFA_PDFFontMgr::CXFA_PDFFontMgr(CXFA_FFDoc* pDoc)\r
1117 {\r
1118     m_pDoc = pDoc;\r
1119 }\r
1120 CXFA_PDFFontMgr::~CXFA_PDFFontMgr()\r
1121 {\r
1122     FX_POSITION ps = m_FDE2PDFFont.GetStartPosition();\r
1123     while (ps) {\r
1124         IFX_Font* pFDEFont;\r
1125         void* pPDFFont;\r
1126         m_FDE2PDFFont.GetNextAssoc(ps, (void*&)pFDEFont, pPDFFont);\r
1127         pFDEFont->SetFontProvider(NULL);\r
1128     }\r
1129     m_FDE2PDFFont.RemoveAll();\r
1130     ps = m_FontArray.GetStartPosition();\r
1131     while (ps) {\r
1132         CFX_ByteString strKey;\r
1133         IFX_Font* pFont = NULL;\r
1134         m_FontArray.GetNextAssoc(ps, strKey, (void*&)pFont);\r
1135         if (pFont != NULL) {\r
1136             pFont->Release();\r
1137         }\r
1138     }\r
1139     m_FontArray.RemoveAll();\r
1140 }\r
1141 IFX_Font* CXFA_PDFFontMgr::FindFont(CFX_ByteString strPsName, FX_BOOL bBold, FX_BOOL bItalic, CPDF_Font** pDstPDFFont, FX_BOOL bStrictMatch)\r
1142 {\r
1143     CPDF_Document* pDoc = m_pDoc->GetPDFDoc();\r
1144     if (pDoc == NULL) {\r
1145         return NULL;\r
1146     }\r
1147     CPDF_Dictionary* pFontSetDict = pDoc->GetRoot()->GetDict(FX_BSTRC("AcroForm"))->GetDict(FX_BSTRC("DR"));\r
1148     if (!pFontSetDict) {\r
1149         return NULL;\r
1150     }\r
1151     pFontSetDict = (CPDF_Dictionary*)pFontSetDict->GetDict(FX_BSTRC("Font"));\r
1152     if (!pFontSetDict) {\r
1153         return NULL;\r
1154     }\r
1155     strPsName.Remove(' ');\r
1156     IFX_FontMgr* pFDEFontMgr = m_pDoc->GetApp()->GetFDEFontMgr();\r
1157     FX_POSITION pos = pFontSetDict->GetStartPos();\r
1158     while (pos) {\r
1159         CFX_ByteString key;\r
1160         CPDF_Object* pObj = pFontSetDict->GetNextElement(pos, key);\r
1161         if (!PsNameMatchDRFontName(strPsName, bBold, bItalic, key, bStrictMatch)) {\r
1162             continue;\r
1163         }\r
1164         CPDF_Object* pDirect = pObj->GetDirect();\r
1165         if (pDirect == NULL || pDirect->GetType() != PDFOBJ_DICTIONARY) {\r
1166             return NULL;\r
1167         }\r
1168         CPDF_Dictionary* pFontDict = (CPDF_Dictionary*)pDirect;\r
1169         if (pFontDict->GetString("Type") != FX_BSTRC("Font")) {\r
1170             return NULL;\r
1171         }\r
1172         CPDF_Font* pPDFFont = pDoc->LoadFont(pFontDict);\r
1173         if (!pPDFFont) {\r
1174             return NULL;\r
1175         }\r
1176         if (!pPDFFont->IsEmbedded()) {\r
1177             *pDstPDFFont = pPDFFont;\r
1178             return NULL;\r
1179         }\r
1180         return IFX_Font::LoadFont(&pPDFFont->m_Font, pFDEFontMgr);\r
1181     }\r
1182     return NULL;\r
1183 }\r
1184 IFX_Font* CXFA_PDFFontMgr::GetFont(FX_WSTR wsFontFamily, FX_DWORD dwFontStyles, CPDF_Font** pPDFFont, FX_BOOL bStrictMatch )\r
1185 {\r
1186     FX_DWORD dwHashCode = FX_HashCode_String_GetW(wsFontFamily.GetPtr(), wsFontFamily.GetLength());\r
1187     CFX_ByteString strKey;\r
1188     IFX_Font* pFont = NULL;\r
1189     strKey.Format("%u%u", dwHashCode, dwFontStyles);\r
1190     if (m_FontArray.Lookup(strKey, (void*&)pFont)) {\r
1191         return pFont;\r
1192     }\r
1193     CFX_ByteString bsPsName;\r
1194     bsPsName = CFX_ByteString::FromUnicode(wsFontFamily);\r
1195     FX_BOOL bBold = (dwFontStyles & FX_FONTSTYLE_Bold) == FX_FONTSTYLE_Bold;\r
1196     FX_BOOL bItalic = (dwFontStyles & FX_FONTSTYLE_Italic) == FX_FONTSTYLE_Italic;\r
1197     CFX_ByteString strFontName = PsNameToFontName(bsPsName, bBold, bItalic);\r
1198     pFont = FindFont(strFontName, bBold, bItalic, pPDFFont, bStrictMatch);\r
1199     if (pFont) {\r
1200         m_FontArray.SetAt(strKey, pFont);\r
1201     }\r
1202     return pFont;\r
1203 }\r
1204 CFX_ByteString CXFA_PDFFontMgr::PsNameToFontName(const CFX_ByteString& strPsName,\r
1205         FX_BOOL bBold, FX_BOOL bItalic)\r
1206 {\r
1207     int32_t nCount = sizeof(g_XFAPDFFontName) / sizeof(XFA_PDFFONTNAME);\r
1208     for (int32_t i = 0; i < nCount; i++) {\r
1209         if (strPsName == g_XFAPDFFontName[i].lpPsName) {\r
1210             int32_t index = 1 + ((bItalic << 1) | bBold);\r
1211             return *(&g_XFAPDFFontName[i].lpPsName + index);\r
1212         }\r
1213     }\r
1214     return strPsName;\r
1215 }\r
1216 FX_BOOL CXFA_PDFFontMgr::PsNameMatchDRFontName(FX_BSTR bsPsName, FX_BOOL bBold, FX_BOOL bItalic, const CFX_ByteString& bsDRFontName, FX_BOOL bStrictMatch)\r
1217 {\r
1218     CFX_ByteString bsDRName = bsDRFontName;\r
1219     bsDRName.Remove('-');\r
1220     int32_t iPsLen = bsPsName.GetLength();\r
1221     int32_t nIndex = bsDRName.Find(bsPsName);\r
1222     if (nIndex != -1 && !bStrictMatch) {\r
1223         return TRUE;\r
1224     }\r
1225     if (nIndex != 0) {\r
1226         return FALSE;\r
1227     }\r
1228     int32_t iDifferLength = bsDRName.GetLength() - iPsLen;\r
1229     if (iDifferLength > 1 || (bBold || bItalic)) {\r
1230         int32_t iBoldIndex = bsDRName.Find(FX_BSTRC("Bold"));\r
1231         FX_BOOL bBoldFont = iBoldIndex > 0;\r
1232         if (bBold ^ bBoldFont) {\r
1233             return FALSE;\r
1234         }\r
1235         if (bBoldFont) {\r
1236             iDifferLength = FX_MIN(iDifferLength - 4, bsDRName.GetLength() - iBoldIndex - 4);\r
1237         }\r
1238         FX_BOOL bItalicFont = TRUE;\r
1239         if (bsDRName.Find(FX_BSTRC("Italic")) > 0) {\r
1240             iDifferLength -= 6;\r
1241         } else if (bsDRName.Find(FX_BSTRC("It")) > 0) {\r
1242             iDifferLength -= 2;\r
1243         } else if (bsDRName.Find(FX_BSTRC("Oblique")) > 0) {\r
1244             iDifferLength -= 7;\r
1245         } else {\r
1246             bItalicFont = FALSE;\r
1247         }\r
1248         if (bItalic ^ bItalicFont) {\r
1249             return FALSE;\r
1250         }\r
1251         if (iDifferLength > 1) {\r
1252             CFX_ByteString bsDRTailer = bsDRName.Right(iDifferLength);\r
1253             if (bsDRTailer.Equal(FX_BSTRC("MT")) || bsDRTailer.Equal(FX_BSTRC("PSMT")) || bsDRTailer.Equal(FX_BSTRC("Regular")) || bsDRTailer.Equal(FX_BSTRC("Reg"))) {\r
1254                 return TRUE;\r
1255             }\r
1256             if (bBoldFont || bItalicFont) {\r
1257                 return FALSE;\r
1258             }\r
1259             FX_BOOL bMatch = FALSE;\r
1260             switch (bsPsName.GetAt(iPsLen - 1)) {\r
1261                 case 'L': {\r
1262                         if (bsDRName.Right(5).Equal(FX_BSTRC("Light"))) {\r
1263                             bMatch = TRUE;\r
1264                         }\r
1265                     }\r
1266                     break;\r
1267                 case 'R': {\r
1268                         if ( bsDRName.Right(7).Equal(FX_BSTRC("Regular")) || bsDRName.Right(3).Equal(FX_BSTRC("Reg"))) {\r
1269                             bMatch = TRUE;\r
1270                         }\r
1271                     }\r
1272                     break;\r
1273                 case 'M': {\r
1274                         if (bsDRName.Right(5).Equal(FX_BSTRC("Medium"))) {\r
1275                             bMatch = TRUE;\r
1276                         }\r
1277                     }\r
1278                     break;\r
1279                 default:\r
1280                     break;\r
1281             }\r
1282             return bMatch;\r
1283         }\r
1284     }\r
1285     return TRUE;\r
1286 }\r
1287 FX_BOOL CXFA_PDFFontMgr::GetCharWidth(IFX_Font* pFont, FX_WCHAR wUnicode, int32_t &iWidth, FX_BOOL bCharCode)\r
1288 {\r
1289     if (wUnicode != 0x20 || bCharCode) {\r
1290         return FALSE;\r
1291     }\r
1292     CPDF_Font* pPDFFont = (CPDF_Font*)m_FDE2PDFFont.GetValueAt(pFont);\r
1293     if (!pPDFFont) {\r
1294         return FALSE;\r
1295     }\r
1296     wUnicode = (FX_WCHAR)pPDFFont->CharCodeFromUnicode(wUnicode);\r
1297     iWidth = pPDFFont->GetCharWidthF(wUnicode);\r
1298     return TRUE;\r
1299 }\r
1300 CXFA_FontMgr::CXFA_FontMgr()\r
1301     : m_pDefFontMgr(NULL)\r
1302 {\r
1303 }\r
1304 CXFA_FontMgr::~CXFA_FontMgr()\r
1305 {\r
1306     DelAllMgrMap();\r
1307 }\r
1308 IFX_Font* CXFA_FontMgr::GetFont(IXFA_Doc* hDoc, FX_WSTR wsFontFamily, FX_DWORD dwFontStyles,\r
1309                                 FX_WORD wCodePage )\r
1310 {\r
1311     FX_DWORD dwHash = FX_HashCode_String_GetW(wsFontFamily.GetPtr(), wsFontFamily.GetLength(), FALSE);\r
1312     CFX_ByteString bsKey;\r
1313     bsKey.Format("%u%u%u", dwHash, dwFontStyles, wCodePage);\r
1314     IFX_Font* pFont = NULL;\r
1315     if (m_FontArray.Lookup(bsKey, (void*&)pFont)) {\r
1316         return pFont;\r
1317     }\r
1318     CFX_WideString wsEnglishName;\r
1319     XFA_LocalFontNameToEnglishName(wsFontFamily, wsEnglishName);\r
1320     CXFA_PDFFontMgr* pMgr = (CXFA_PDFFontMgr*)m_PDFFontMgrArray.GetValueAt(hDoc);\r
1321     CPDF_Font* pPDFFont = NULL;\r
1322     if (pMgr != NULL) {\r
1323         pFont = pMgr->GetFont(wsEnglishName, dwFontStyles, &pPDFFont);\r
1324         if (pFont) {\r
1325             return pFont;\r
1326         }\r
1327     }\r
1328     if (pFont == NULL && m_pDefFontMgr != NULL) {\r
1329         pFont = m_pDefFontMgr->GetFont(hDoc, wsFontFamily, dwFontStyles, wCodePage);\r
1330     }\r
1331     if (pFont == NULL && pMgr != NULL) {\r
1332         pPDFFont = NULL;\r
1333         pFont = pMgr->GetFont(wsEnglishName, dwFontStyles, &pPDFFont, FALSE);\r
1334         if (pFont) {\r
1335             return pFont;\r
1336         }\r
1337     }\r
1338     if (pFont == NULL && m_pDefFontMgr != NULL) {\r
1339         pFont = m_pDefFontMgr->GetDefaultFont(hDoc, wsFontFamily, dwFontStyles, wCodePage);\r
1340     }\r
1341     FXSYS_assert(pFont != NULL);\r
1342     if (pFont) {\r
1343         if (pPDFFont) {\r
1344             pMgr->m_FDE2PDFFont.SetAt(pFont, pPDFFont);\r
1345             pFont->SetFontProvider(pMgr);\r
1346         }\r
1347         m_FontArray.SetAt(bsKey, pFont);\r
1348     }\r
1349     return pFont;\r
1350 }\r
1351 void CXFA_FontMgr::LoadDocFonts(IXFA_Doc* hDoc)\r
1352 {\r
1353     if (!m_PDFFontMgrArray.GetValueAt(hDoc)) {\r
1354         m_PDFFontMgrArray.SetAt(hDoc, FX_NEW CXFA_PDFFontMgr((CXFA_FFDoc*)hDoc));\r
1355     }\r
1356 }\r
1357 void CXFA_FontMgr::ReleaseDocFonts(IXFA_Doc* hDoc)\r
1358 {\r
1359     CXFA_PDFFontMgr* pMgr = NULL;\r
1360     if (m_PDFFontMgrArray.Lookup(hDoc, (void*&)pMgr)) {\r
1361         if (pMgr != NULL) {\r
1362             delete pMgr;\r
1363         }\r
1364         m_PDFFontMgrArray.RemoveKey(hDoc);\r
1365     }\r
1366 }\r
1367 void CXFA_FontMgr::DelAllMgrMap()\r
1368 {\r
1369     FX_POSITION ps = m_PDFFontMgrArray.GetStartPosition();\r
1370     while (ps) {\r
1371         IXFA_Doc* hDoc = NULL;\r
1372         CXFA_PDFFontMgr* pMgr = NULL;\r
1373         m_PDFFontMgrArray.GetNextAssoc(ps, (void*&)hDoc, (void*&)pMgr);\r
1374         if (pMgr != NULL) {\r
1375             delete pMgr;\r
1376         }\r
1377     }\r
1378     m_PDFFontMgrArray.RemoveAll();\r
1379     m_FontArray.RemoveAll();\r
1380 }\r
1381 void CXFA_FontMgr::SetDefFontMgr(IXFA_FontMgr* pFontMgr)\r
1382 {\r
1383     m_pDefFontMgr = pFontMgr;\r
1384 }\r