OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "../../../include/fpdfapi/fpdf_page.h" | 7 #include "../../../include/fpdfapi/fpdf_page.h" |
8 #include "../../../include/fxge/fx_freetype.h" | 8 #include "../../../include/fxge/fx_freetype.h" |
9 extern FX_WCHAR PDF_UnicodeFromAdobeName(const FX_CHAR*); | 9 extern FX_WCHAR PDF_UnicodeFromAdobeName(const FX_CHAR*); |
10 const struct _UnicodeAlt { | 10 const struct _UnicodeAlt { |
11 FX_WORD» m_Unicode; | 11 FX_WORD m_Unicode; |
12 const FX_CHAR* m_Alter; | 12 const FX_CHAR* m_Alter; |
13 } | 13 } UnicodeAlts[] = { { 0x00a0, " " }, |
14 UnicodeAlts[] = { | 14 { 0x00a1, "!" }, |
15 {0x00a0, " "}, {0x00a1, "!"}, {0x00a2, "c"}, {0x00a3, "P"}, {0x00a4, "o"}, | 15 { 0x00a2, "c" }, |
16 {0x00a5, "Y"}, {0x00a6, "|"}, {0x00a7, "S"}, {0x00a9, "(C)"}, {0x00aa, "a"}, | 16 { 0x00a3, "P" }, |
17 {0x00ab, "<<"}, {0x00ac, "-|"}, {0x00ae, "(R)"}, {0x00af, "-"}, | 17 { 0x00a4, "o" }, |
18 {0x00b0, "o"}, {0x00b1, "+/-"}, {0x00b2, "^2"}, { 0x00b3, "^3"}, | 18 { 0x00a5, "Y" }, |
19 {0x00b4, "'"}, {0x00b5, "u"}, {0x00b6, "P"}, {0x00b7, "."}, | 19 { 0x00a6, "|" }, |
20 {0x00b9, "^1"}, {0x00ba, "o"}, {0x00bb, ">>"}, {0x00bc, "1/4"}, | 20 { 0x00a7, "S" }, |
21 {0x00bd, "1/2"}, {0x00be, "3/4"}, {0x00bf, "?"}, {0x00c0, "A"}, | 21 { 0x00a9, "(C)" }, |
22 {0x00c1, "A"}, {0x00c2, "A"}, {0x00c3, "A"}, {0x00c4, "A"}, | 22 { 0x00aa, "a" }, |
23 {0x00c5, "A"}, {0x00c6, "AE"}, {0x00c7, "C"}, {0x00c8, "E"}, | 23 { 0x00ab, "<<" }, |
24 {0x00c9, "E"}, {0x00ca, "E"}, {0x00cb, "E"}, {0x00cc, "I"}, | 24 { 0x00ac, "-|" }, |
25 {0x00cd, "I"}, {0x00ce, "I"}, {0x00cf, "I"}, | 25 { 0x00ae, "(R)" }, |
26 {0x00d1, "N"}, {0x00d2, "O"}, {0x00d3, "O"}, {0x00d4, "O"}, | 26 { 0x00af, "-" }, |
27 {0x00d5, "O"}, {0x00d6, "O"}, {0x00d7, "x"}, {0x00d8, "O"}, | 27 { 0x00b0, "o" }, |
28 {0x00d9, "U"}, {0x00da, "U"}, {0x00db, "U"}, {0x00dc, "U"}, | 28 { 0x00b1, "+/-" }, |
29 {0x00dd, "Y"}, {0x00df, "S"}, {0x00e0, "a"}, | 29 { 0x00b2, "^2" }, |
30 {0x00e1, "a"}, {0x00e2, "a"}, {0x00e3, "a"}, {0x00e4, "a"}, | 30 { 0x00b3, "^3" }, |
31 {0x00e5, "a"}, {0x00e6, "ae"}, {0x00e7, "c"}, {0x00e8, "e"}, | 31 { 0x00b4, "'" }, |
32 {0x00e9, "e"}, {0x00ea, "e"}, {0x00eb, "e"}, {0x00ec, "i"}, | 32 { 0x00b5, "u" }, |
33 {0x00ed, "i"}, {0x00ee, "i"}, {0x00ef, "i"}, | 33 { 0x00b6, "P" }, |
34 {0x00f1, "n"}, {0x00f2, "o"}, {0x00f3, "o"}, {0x00f4, "o"}, | 34 { 0x00b7, "." }, |
35 {0x00f5, "o"}, {0x00f6, "o"}, {0x00f7, "/"}, {0x00f8, "o"}, | 35 { 0x00b9, "^1" }, |
36 {0x00f9, "u"}, {0x00fa, "u"}, {0x00fb, "u"}, {0x00fc, "u"}, | 36 { 0x00ba, "o" }, |
37 {0x00fd, "y"}, {0x00ff, "y"}, | 37 { 0x00bb, ">>" }, |
38 {0x02b0, "h"}, {0x02b2, "j"}, {0x02b3, "r"}, {0x02b7, "w"}, | 38 { 0x00bc, "1/4" }, |
39 {0x02b8, "y"}, {0x02b9, "'"}, {0x02ba, "\""}, {0x02bb, "'"}, | 39 { 0x00bd, "1/2" }, |
40 {0x02bc, "'"}, {0x02bd, "'"}, {0x02be, "'"}, {0x02bf, "'"}, | 40 { 0x00be, "3/4" }, |
41 {0x02c2, "<"}, {0x02c3, ">"}, {0x02c4, "^"}, {0x02c5, "v"}, | 41 { 0x00bf, "?" }, |
42 {0x02c6, "^"}, {0x02c7, "v"}, {0x02c8, "'"}, {0x02c9, "-"}, | 42 { 0x00c0, "A" }, |
43 {0x02ca, "'"}, {0x02cb, "'"}, {0x02cc, "."}, {0x02cd, "_"}, | 43 { 0x00c1, "A" }, |
44 {0x2010, "-"}, {0x2012, "-"}, {0x2013, "-"}, {0x2014, "--"}, | 44 { 0x00c2, "A" }, |
45 {0x2015, "--"}, {0x2016, "|"}, {0x2017, "_"}, | 45 { 0x00c3, "A" }, |
46 {0x2018, "'"}, {0x2019, "'"}, {0x201a, ","}, {0x201b, "'"}, | 46 { 0x00c4, "A" }, |
47 {0x201c, "\""}, {0x201d, "\""}, {0x201e, ","}, {0x201f, "'"}, | 47 { 0x00c5, "A" }, |
48 {0x2020, "+"}, {0x2021, "+"}, {0x2022, "*"}, {0x2023, ">"}, | 48 { 0x00c6, "AE" }, |
49 {0x2024, "."}, {0x2025, ".."}, {0x2027, "."}, {0x2032, "'"}, | 49 { 0x00c7, "C" }, |
50 {0x2033, "\""}, {0x2035, "'"}, {0x2036, "\""}, {0x2038, "^"}, | 50 { 0x00c8, "E" }, |
51 {0x2039, "<"}, {0x203a, ">"}, {0x203b, "*"}, {0x203c, "!!"}, | 51 { 0x00c9, "E" }, |
52 {0x203d, "?!"}, {0x203e, "-"}, {0x2044, "/"}, {0x2047, "??"}, | 52 { 0x00ca, "E" }, |
53 {0x2048, "?!"}, {0x2049, "!?"}, {0x204e, "*"}, {0x2052, "%"}, | 53 { 0x00cb, "E" }, |
54 {0x2122, "(TM)"}, | 54 { 0x00cc, "I" }, |
55 {0x2212, "-"}, {0x2215, "/"}, {0x2216, "\\"}, {0x2217, "*"}, | 55 { 0x00cd, "I" }, |
56 {0x2218, "*"}, {0x2219, "*"}, {0x2223, "|"}, {0x22c5, "."}, | 56 { 0x00ce, "I" }, |
57 {0x266f, "#"}, | 57 { 0x00cf, "I" }, |
58 {0XF6D9, "(C)"}, {0XF6DA, "(C)"}, {0XF6DB, "(TM)"}, | 58 { 0x00d1, "N" }, |
59 {0XF8E8, "(C)"}, {0xf8e9, "(C)"}, {0XF8EA, "(TM)"}, | 59 { 0x00d2, "O" }, |
| 60 { 0x00d3, "O" }, |
| 61 { 0x00d4, "O" }, |
| 62 { 0x00d5, "O" }, |
| 63 { 0x00d6, "O" }, |
| 64 { 0x00d7, "x" }, |
| 65 { 0x00d8, "O" }, |
| 66 { 0x00d9, "U" }, |
| 67 { 0x00da, "U" }, |
| 68 { 0x00db, "U" }, |
| 69 { 0x00dc, "U" }, |
| 70 { 0x00dd, "Y" }, |
| 71 { 0x00df, "S" }, |
| 72 { 0x00e0, "a" }, |
| 73 { 0x00e1, "a" }, |
| 74 { 0x00e2, "a" }, |
| 75 { 0x00e3, "a" }, |
| 76 { 0x00e4, "a" }, |
| 77 { 0x00e5, "a" }, |
| 78 { 0x00e6, "ae" }, |
| 79 { 0x00e7, "c" }, |
| 80 { 0x00e8, "e" }, |
| 81 { 0x00e9, "e" }, |
| 82 { 0x00ea, "e" }, |
| 83 { 0x00eb, "e" }, |
| 84 { 0x00ec, "i" }, |
| 85 { 0x00ed, "i" }, |
| 86 { 0x00ee, "i" }, |
| 87 { 0x00ef, "i" }, |
| 88 { 0x00f1, "n" }, |
| 89 { 0x00f2, "o" }, |
| 90 { 0x00f3, "o" }, |
| 91 { 0x00f4, "o" }, |
| 92 { 0x00f5, "o" }, |
| 93 { 0x00f6, "o" }, |
| 94 { 0x00f7, "/" }, |
| 95 { 0x00f8, "o" }, |
| 96 { 0x00f9, "u" }, |
| 97 { 0x00fa, "u" }, |
| 98 { 0x00fb, "u" }, |
| 99 { 0x00fc, "u" }, |
| 100 { 0x00fd, "y" }, |
| 101 { 0x00ff, "y" }, |
| 102 { 0x02b0, "h" }, |
| 103 { 0x02b2, "j" }, |
| 104 { 0x02b3, "r" }, |
| 105 { 0x02b7, "w" }, |
| 106 { 0x02b8, "y" }, |
| 107 { 0x02b9, "'" }, |
| 108 { 0x02ba, "\"" }, |
| 109 { 0x02bb, "'" }, |
| 110 { 0x02bc, "'" }, |
| 111 { 0x02bd, "'" }, |
| 112 { 0x02be, "'" }, |
| 113 { 0x02bf, "'" }, |
| 114 { 0x02c2, "<" }, |
| 115 { 0x02c3, ">" }, |
| 116 { 0x02c4, "^" }, |
| 117 { 0x02c5, "v" }, |
| 118 { 0x02c6, "^" }, |
| 119 { 0x02c7, "v" }, |
| 120 { 0x02c8, "'" }, |
| 121 { 0x02c9, "-" }, |
| 122 { 0x02ca, "'" }, |
| 123 { 0x02cb, "'" }, |
| 124 { 0x02cc, "." }, |
| 125 { 0x02cd, "_" }, |
| 126 { 0x2010, "-" }, |
| 127 { 0x2012, "-" }, |
| 128 { 0x2013, "-" }, |
| 129 { 0x2014, "--" }, |
| 130 { 0x2015, "--" }, |
| 131 { 0x2016, "|" }, |
| 132 { 0x2017, "_" }, |
| 133 { 0x2018, "'" }, |
| 134 { 0x2019, "'" }, |
| 135 { 0x201a, "," }, |
| 136 { 0x201b, "'" }, |
| 137 { 0x201c, "\"" }, |
| 138 { 0x201d, "\"" }, |
| 139 { 0x201e, "," }, |
| 140 { 0x201f, "'" }, |
| 141 { 0x2020, "+" }, |
| 142 { 0x2021, "+" }, |
| 143 { 0x2022, "*" }, |
| 144 { 0x2023, ">" }, |
| 145 { 0x2024, "." }, |
| 146 { 0x2025, ".." }, |
| 147 { 0x2027, "." }, |
| 148 { 0x2032, "'" }, |
| 149 { 0x2033, "\"" }, |
| 150 { 0x2035, "'" }, |
| 151 { 0x2036, "\"" }, |
| 152 { 0x2038, "^" }, |
| 153 { 0x2039, "<" }, |
| 154 { 0x203a, ">" }, |
| 155 { 0x203b, "*" }, |
| 156 { 0x203c, "!!" }, |
| 157 { 0x203d, "?!" }, |
| 158 { 0x203e, "-" }, |
| 159 { 0x2044, "/" }, |
| 160 { 0x2047, "??" }, |
| 161 { 0x2048, "?!" }, |
| 162 { 0x2049, "!?" }, |
| 163 { 0x204e, "*" }, |
| 164 { 0x2052, "%" }, |
| 165 { 0x2122, "(TM)" }, |
| 166 { 0x2212, "-" }, |
| 167 { 0x2215, "/" }, |
| 168 { 0x2216, "\\" }, |
| 169 { 0x2217, "*" }, |
| 170 { 0x2218, "*" }, |
| 171 { 0x2219, "*" }, |
| 172 { 0x2223, "|" }, |
| 173 { 0x22c5, "." }, |
| 174 { 0x266f, "#" }, |
| 175 { 0XF6D9, "(C)" }, |
| 176 { 0XF6DA, "(C)" }, |
| 177 { 0XF6DB, "(TM)" }, |
| 178 { 0XF8E8, "(C)" }, |
| 179 { 0xf8e9, "(C)" }, |
| 180 { 0XF8EA, "(TM)" }, |
60 | 181 |
61 {0xfb01, "fi"}, {0xfb02, "fl"} | 182 { 0xfb01, "fi" }, |
62 }; | 183 { 0xfb02, "fl" } }; |
63 const FX_CHAR* FCS_GetAltStr(FX_WCHAR unicode) | 184 const FX_CHAR* FCS_GetAltStr(FX_WCHAR unicode) { |
64 { | 185 int begin = 0; |
65 int begin = 0; | 186 int end = sizeof UnicodeAlts / sizeof(struct _UnicodeAlt) - 1; |
66 int end = sizeof UnicodeAlts / sizeof(struct _UnicodeAlt) - 1; | 187 while (begin <= end) { |
67 while (begin <= end) { | 188 int middle = (begin + end) / 2; |
68 int middle = (begin + end) / 2; | 189 FX_WORD middlecode = UnicodeAlts[middle].m_Unicode; |
69 FX_WORD middlecode = UnicodeAlts[middle].m_Unicode; | 190 if (middlecode > unicode) { |
70 if (middlecode > unicode) { | 191 end = middle - 1; |
71 end = middle - 1; | 192 } else if (middlecode < unicode) { |
72 } else if (middlecode < unicode) { | 193 begin = middle + 1; |
73 begin = middle + 1; | 194 } else { |
74 } else { | 195 return UnicodeAlts[middle].m_Alter; |
75 return UnicodeAlts[middle].m_Alter; | |
76 } | |
77 } | 196 } |
78 return NULL; | 197 } |
| 198 return NULL; |
79 } | 199 } |
80 const FX_WORD StandardEncoding[256] = { | 200 const FX_WORD StandardEncoding[256] = { |
81 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 201 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
82 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 202 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
83 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 203 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
84 0x0000, 0x0000, 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x20
19, | 204 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0021, 0x0022, 0x0023, |
85 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x00
31, | 205 0x0024, 0x0025, 0x0026, 0x2019, 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, |
86 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x00
3b, | 206 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, |
87 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x00
45, | 207 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, |
88 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x00
4f, | 208 0x003f, 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, |
89 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x00
59, | 209 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, |
90 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x2018, 0x0061, 0x0062, 0x00
63, | 210 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, |
91 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x00
6d, | 211 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x2018, 0x0061, 0x0062, |
92 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x00
77, | 212 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, |
93 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x0000, 0x0000, 0x00
00, | 213 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, |
94 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 214 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, |
95 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 215 0x007e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
96 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 216 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
97 0x0000, 0x00a1, 0x00a2, 0x00a3, 0x2044, 0x00a5, 0x0192, 0x00a7, 0x00a4, 0x00
27, | 217 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
98 0x201c, 0x00ab, 0x2039, 0x203a, 0xfb01, 0xfb02, 0x0000, 0x2013, 0x2020, 0x20
21, | 218 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00a1, |
99 0x00b7, 0x0000, 0x00b6, 0x2022, 0x201a, 0x201e, 0x201d, 0x00bb, 0x2026, 0x20
30, | 219 0x00a2, 0x00a3, 0x2044, 0x00a5, 0x0192, 0x00a7, 0x00a4, 0x0027, 0x201c, |
100 0x0000, 0x00bf, 0x0000, 0x0060, 0x00b4, 0x02c6, 0x02dc, 0x00af, 0x02d8, 0x02
d9, | 220 0x00ab, 0x2039, 0x203a, 0xfb01, 0xfb02, 0x0000, 0x2013, 0x2020, 0x2021, |
101 0x00a8, 0x0000, 0x02da, 0x00b8, 0x0000, 0x02dd, 0x02db, 0x02c7, 0x2014, 0x00
00, | 221 0x00b7, 0x0000, 0x00b6, 0x2022, 0x201a, 0x201e, 0x201d, 0x00bb, 0x2026, |
102 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 222 0x2030, 0x0000, 0x00bf, 0x0000, 0x0060, 0x00b4, 0x02c6, 0x02dc, 0x00af, |
103 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00c6, 0x0000, 0x00aa, 0x0000, 0x00
00, | 223 0x02d8, 0x02d9, 0x00a8, 0x0000, 0x02da, 0x00b8, 0x0000, 0x02dd, 0x02db, |
104 0x0000, 0x0000, 0x0141, 0x00d8, 0x0152, 0x00ba, 0x0000, 0x0000, 0x0000, 0x00
00, | 224 0x02c7, 0x2014, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
105 0x0000, 0x00e6, 0x0000, 0x0000, 0x0000, 0x0131, 0x0000, 0x0000, 0x0142, 0x00
f8, | 225 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
106 0x0153, 0x00df, 0x0000, 0x0000, 0x0000, 0x0000 | 226 0x00c6, 0x0000, 0x00aa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0141, 0x00d8, |
| 227 0x0152, 0x00ba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00e6, 0x0000, |
| 228 0x0000, 0x0000, 0x0131, 0x0000, 0x0000, 0x0142, 0x00f8, 0x0153, 0x00df, |
| 229 0x0000, 0x0000, 0x0000, 0x0000 |
107 }; | 230 }; |
108 const FX_WORD MacRomanEncoding[256] = { | 231 const FX_WORD MacRomanEncoding[256] = { |
109 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 232 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
110 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 233 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
111 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 234 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
112 0x0000, 0x0000, 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x00
27, | 235 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0021, 0x0022, 0x0023, |
113 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x00
31, | 236 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, |
114 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x00
3b, | 237 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, |
115 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x00
45, | 238 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, |
116 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x00
4f, | 239 0x003f, 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, |
117 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x00
59, | 240 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, |
118 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x00
63, | 241 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, |
119 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x00
6d, | 242 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, |
120 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x00
77, | 243 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, |
121 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x0000, 0x00c4, 0x00
c5, | 244 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, |
122 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1, 0x00e0, 0x00e2, 0x00e4, 0x00
e3, | 245 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, |
123 0x00e5, 0x00e7, 0x00e9, 0x00e8, 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00
ef, | 246 0x007e, 0x0000, 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, |
124 0x00f1, 0x00f3, 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00
fc, | 247 0x00e1, 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8, |
125 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df, 0x00ae, 0x00
a9, | 248 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3, 0x00f2, |
126 0x2122, 0x00b4, 0x00a8, 0x0000, 0x00c6, 0x00d8, 0x0000, 0x00b1, 0x0000, 0x00
00, | 249 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc, 0x2020, 0x00b0, |
127 0x00a5, 0x00b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00aa, 0x00ba, 0x00
00, | 250 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df, 0x00ae, 0x00a9, 0x2122, |
128 0x00e6, 0x00f8, 0x00bf, 0x00a3, 0x00ac, 0x0000, 0x0192, 0x0000, 0x0000, 0x00
ab, | 251 0x00b4, 0x00a8, 0x0000, 0x00c6, 0x00d8, 0x0000, 0x00b1, 0x0000, 0x0000, |
129 0x00bb, 0x2026, 0x0020, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153, 0x2013, 0x20
14, | 252 0x00a5, 0x00b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00aa, 0x00ba, |
130 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x0000, 0x00ff, 0x0178, 0x2044, 0x00
a4, | 253 0x0000, 0x00e6, 0x00f8, 0x00bf, 0x00a3, 0x00ac, 0x0000, 0x0192, 0x0000, |
131 0x2039, 0x203a, 0xfb01, 0xfb02, 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00
c2, | 254 0x0000, 0x00ab, 0x00bb, 0x2026, 0x0020, 0x00c0, 0x00c3, 0x00d5, 0x0152, |
132 0x00ca, 0x00c1, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00
d4, | 255 0x0153, 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x0000, |
133 0x0000, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc, 0x00af, 0x02
d8, | 256 0x00ff, 0x0178, 0x2044, 0x00a4, 0x2039, 0x203a, 0xfb01, 0xfb02, 0x2021, |
134 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7 | 257 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1, 0x00cb, 0x00c8, |
| 258 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4, 0x0000, 0x00d2, 0x00da, |
| 259 0x00db, 0x00d9, 0x0131, 0x02c6, 0x02dc, 0x00af, 0x02d8, 0x02d9, 0x02da, |
| 260 0x00b8, 0x02dd, 0x02db, 0x02c7 |
135 }; | 261 }; |
136 const FX_WORD AdobeWinAnsiEncoding[256] = { | 262 const FX_WORD AdobeWinAnsiEncoding[256] = { |
137 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 263 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
138 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 264 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
139 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 265 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
140 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 266 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0021, 0x0022, 0x0023, |
141 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, | 267 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, |
142 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, | 268 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, |
143 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, | 269 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, |
144 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, | 270 0x003f, 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, |
145 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, | 271 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, |
146 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, | 272 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, |
147 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, | 273 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, |
148 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, | 274 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, |
149 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, | 275 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, |
150 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, | 276 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, |
151 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, | 277 0x007e, 0x2022, 0x20ac, 0x2022, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, |
152 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x2022, | 278 0x2021, 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x2022, 0x017d, 0x2022, |
153 0x20ac, 0x2022, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021, | 279 0x2022, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014, 0x02dc, |
154 0x02c6, 0x2030, 0x0160, 0x2039,» 0x0152, 0x2022, 0x017d, 0x2022, | 280 0x2122, 0x0161, 0x203a, 0x0153, 0x2022, 0x017e, 0x0178, 0x0020, 0x00a1, |
155 0x2022, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014, | 281 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7, 0x00a8, 0x00a9, 0x00aa, |
156 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x2022, 0x017e, 0x0178, | 282 0x00ab, 0x00ac, 0x002d, 0x00ae, 0x00af, 0x00b0, 0x00b1, 0x00b2, 0x00b3, |
157 0x0020, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7, | 283 0x00b4, 0x00b5, 0x00b6, 0x00b7, 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, |
158 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x002d, 0x00ae, 0x00af, | 284 0x00bd, 0x00be, 0x00bf, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, |
159 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7, | 285 0x00c6, 0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, |
160 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf, | 286 0x00cf, 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7, |
161 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7, | 287 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df, 0x00e0, |
162 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf, | 288 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7, 0x00e8, 0x00e9, |
163 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7, | 289 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef, 0x00f0, 0x00f1, 0x00f2, |
164 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df, | 290 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7, 0x00f8, 0x00f9, 0x00fa, 0x00fb, |
165 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7, | 291 0x00fc, 0x00fd, 0x00fe, 0x00ff |
166 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef, | |
167 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7, | |
168 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff | |
169 }; | 292 }; |
170 extern const FX_WORD PDFDocEncoding[256]; | 293 extern const FX_WORD PDFDocEncoding[256]; |
171 const FX_WORD MacExpertEncoding[256] = { | 294 const FX_WORD MacExpertEncoding[256] = { |
172 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 295 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
173 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 296 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
174 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 297 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
175 0x0000, 0x0000, 0x0020, 0xf721, 0xf6f8, 0xf7a2, 0xf724, 0xf6e4, 0xf726, 0xf7
b4, | 298 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0xf721, 0xf6f8, 0xf7a2, |
176 0x207d, 0x207e, 0x2025, 0x2024, 0x002c, 0x002d, 0x002e, 0x2044, 0xf730, 0xf7
31, | 299 0xf724, 0xf6e4, 0xf726, 0xf7b4, 0x207d, 0x207e, 0x2025, 0x2024, 0x002c, |
177 0xf732, 0xf733, 0xf734, 0xf735, 0xf736, 0xf737, 0xf738, 0xf739, 0x003a, 0x00
3b, | 300 0x002d, 0x002e, 0x2044, 0xf730, 0xf731, 0xf732, 0xf733, 0xf734, 0xf735, |
178 0x0000, 0xf6de, 0x0000, 0xf73f, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7f0, 0x00
00, | 301 0xf736, 0xf737, 0xf738, 0xf739, 0x003a, 0x003b, 0x0000, 0xf6de, 0x0000, |
179 0x0000, 0x00bc, 0x00bd, 0x00be, 0x215b, 0x215c, 0x215d, 0x215e, 0x2153, 0x21
54, | 302 0xf73f, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7f0, 0x0000, 0x0000, 0x00bc, |
180 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfb00, 0xfb01, 0xfb02, 0xfb
03, | 303 0x00bd, 0x00be, 0x215b, 0x215c, 0x215d, 0x215e, 0x2153, 0x2154, 0x0000, |
181 0xfb04, 0x208d, 0x0000, 0x208e, 0xf6f6, 0xf6e5, 0xf760, 0xf761, 0xf762, 0xf7
63, | 304 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xfb00, 0xfb01, 0xfb02, 0xfb03, |
182 0xf764, 0xf765, 0xf766, 0xf767, 0xf768, 0xf769, 0xf76a, 0xf76b, 0xf76c, 0xf7
6d, | 305 0xfb04, 0x208d, 0x0000, 0x208e, 0xf6f6, 0xf6e5, 0xf760, 0xf761, 0xf762, |
183 0xf76e, 0xf76f, 0xf770, 0xf771, 0xf772, 0xf773, 0xf774, 0xf775, 0xf776, 0xf7
77, | 306 0xf763, 0xf764, 0xf765, 0xf766, 0xf767, 0xf768, 0xf769, 0xf76a, 0xf76b, |
184 0xf778, 0xf779, 0xf77a, 0x20a1, 0xf6dc, 0xf6dd, 0xf6fe, 0x0000, 0x0000, 0xf6
e9, | 307 0xf76c, 0xf76d, 0xf76e, 0xf76f, 0xf770, 0xf771, 0xf772, 0xf773, 0xf774, |
185 0xf6e0, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7e1, 0xf7e0, 0xf7e2, 0xf7e4, 0xf7
e3, | 308 0xf775, 0xf776, 0xf777, 0xf778, 0xf779, 0xf77a, 0x20a1, 0xf6dc, 0xf6dd, |
186 0xf7e5, 0xf7e7, 0xf7e9, 0xf7e8, 0xf7ea, 0xf7eb, 0xf7ed, 0xf7ec, 0xf7ee, 0xf7
ef, | 309 0xf6fe, 0x0000, 0x0000, 0xf6e9, 0xf6e0, 0x0000, 0x0000, 0x0000, 0x0000, |
187 0xf7f1, 0xf7f3, 0xf7f2, 0xf7f4, 0xf7f6, 0xf7f5, 0xf7fa, 0xf7f9, 0xf7fb, 0xf7
fc, | 310 0xf7e1, 0xf7e0, 0xf7e2, 0xf7e4, 0xf7e3, 0xf7e5, 0xf7e7, 0xf7e9, 0xf7e8, |
188 0x0000, 0x2078, 0x2084, 0x2083, 0x2086, 0x2088, 0x2087, 0xf6fd, 0x0000, 0xf6
df, | 311 0xf7ea, 0xf7eb, 0xf7ed, 0xf7ec, 0xf7ee, 0xf7ef, 0xf7f1, 0xf7f3, 0xf7f2, |
189 0x2082, 0x0000, 0xf7a8, 0x0000, 0xf6f5, 0xf6fd, 0x2085, 0x0000, 0xf6e1, 0xf6
e7, | 312 0xf7f4, 0xf7f6, 0xf7f5, 0xf7fa, 0xf7f9, 0xf7fb, 0xf7fc, 0x0000, 0x2078, |
190 0xf7fd, 0x0000, 0xf6e3, 0x0000, 0x0000, 0xf7fe, 0x0000, 0x2089, 0x2080, 0xf6
ff, | 313 0x2084, 0x2083, 0x2086, 0x2088, 0x2087, 0xf6fd, 0x0000, 0xf6df, 0x2082, |
191 0xf7e6, 0xf7f8, 0xf7bf, 0x2081, 0xf6e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 314 0x0000, 0xf7a8, 0x0000, 0xf6f5, 0xf6fd, 0x2085, 0x0000, 0xf6e1, 0xf6e7, |
192 0x0000, 0xf7b8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf6fa, 0x2012, 0xf6
e6, | 315 0xf7fd, 0x0000, 0xf6e3, 0x0000, 0x0000, 0xf7fe, 0x0000, 0x2089, 0x2080, |
193 0x0000, 0x0000, 0x0000, 0x0000, 0xf7a1, 0x0000, 0xf7ff, 0x0000, 0x00b9, 0x00
b2, | 316 0xf6ff, 0xf7e6, 0xf7f8, 0xf7bf, 0x2081, 0xf6e9, 0x0000, 0x0000, 0x0000, |
194 0x00b3, 0x2074, 0x2075, 0x2076, 0x2077, 0x2079, 0x2070, 0x0000, 0xf6ec, 0xf6
f1, | 317 0x0000, 0x0000, 0x0000, 0xf7b8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
195 0x0000, 0x0000, 0x0000, 0xf6ed, 0xf6f2, 0xf6eb, 0x0000, 0x0000, 0x0000, 0x00
00, | 318 0xf6fa, 0x2012, 0xf6e6, 0x0000, 0x0000, 0x0000, 0x0000, 0xf7a1, 0x0000, |
196 0x0000, 0xf6ee, 0xf6fb, 0xf6f4, 0xf7af, 0xf6ea, 0x207f, 0xf6ef, 0xf6e2, 0xf6
e8, | 319 0xf7ff, 0x0000, 0x00b9, 0x00b2, 0x00b3, 0x2074, 0x2075, 0x2076, 0x2077, |
197 0xf6f7, 0xf6fc, 0x0000, 0x0000, 0x0000, 0x0000 | 320 0x2079, 0x2070, 0x0000, 0xf6ec, 0xf6f1, 0x0000, 0x0000, 0x0000, 0xf6ed, |
| 321 0xf6f2, 0xf6eb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf6ee, 0xf6fb, |
| 322 0xf6f4, 0xf7af, 0xf6ea, 0x207f, 0xf6ef, 0xf6e2, 0xf6e8, 0xf6f7, 0xf6fc, |
| 323 0x0000, 0x0000, 0x0000, 0x0000 |
198 }; | 324 }; |
199 const FX_WORD AdobeSymbolEncoding[256] = { | 325 const FX_WORD AdobeSymbolEncoding[256] = { |
200 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 326 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
201 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 327 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
202 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 328 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
203 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 329 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0021, 0x2200, 0x0023, |
204 0x0020, 0x0021, 0x2200, 0x0023, 0x2203, 0x0025, 0x0026, 0x220B, | 330 0x2203, 0x0025, 0x0026, 0x220B, 0x0028, 0x0029, 0x2217, 0x002B, 0x002C, |
205 0x0028, 0x0029, 0x2217, 0x002B, 0x002C, 0x2212, 0x002E, 0x002F, | 331 0x2212, 0x002E, 0x002F, 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, |
206 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, | 332 0x0036, 0x0037, 0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, |
207 0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F, | 333 0x003F, 0x2245, 0x0391, 0x0392, 0x03A7, 0x0394, 0x0395, 0x03A6, 0x0393, |
208 0x2245, 0x0391, 0x0392, 0x03A7, 0x0394, 0x0395, 0x03A6, 0x0393, | 334 0x0397, 0x0399, 0x03D1, 0x039A, 0x039B, 0x039C, 0x039D, 0x039F, 0x03A0, |
209 0x0397, 0x0399, 0x03D1, 0x039A, 0x039B, 0x039C, 0x039D, 0x039F, | 335 0x0398, 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03C2, 0x03A9, 0x039E, 0x03A8, |
210 0x03A0, 0x0398, 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03C2, 0x03A9, | 336 0x0396, 0x005B, 0x2234, 0x005D, 0x22A5, 0x005F, 0xF8E5, 0x03B1, 0x03B2, |
211 0x039E, 0x03A8, 0x0396, 0x005B, 0x2234, 0x005D, 0x22A5, 0x005F, | 337 0x03C7, 0x03B4, 0x03B5, 0x03C6, 0x03B3, 0x03B7, 0x03B9, 0x03D5, 0x03BA, |
212 0xF8E5, 0x03B1, 0x03B2, 0x03C7, 0x03B4, 0x03B5, 0x03C6, 0x03B3, | 338 0x03BB, 0x03BC, 0x03BD, 0x03BF, 0x03C0, 0x03B8, 0x03C1, 0x03C3, 0x03C4, |
213 0x03B7, 0x03B9, 0x03D5, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BF, | 339 0x03C5, 0x03D6, 0x03C9, 0x03BE, 0x03C8, 0x03B6, 0x007B, 0x007C, 0x007D, |
214 0x03C0, 0x03B8, 0x03C1, 0x03C3, 0x03C4, 0x03C5, 0x03D6, 0x03C9, | 340 0x223C, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
215 0x03BE, 0x03C8, 0x03B6, 0x007B, 0x007C, 0x007D, 0x223C, 0x0000, | 341 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
216 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 342 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
217 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 343 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x20AC, 0x03D2, |
218 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 344 0x2032, 0x2264, 0x2044, 0x221E, 0x0192, 0x2663, 0x2666, 0x2665, 0x2660, |
219 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 345 0x2194, 0x2190, 0x2191, 0x2192, 0x2193, 0x00B0, 0x00B1, 0x2033, 0x2265, |
220 0x20AC, 0x03D2, 0x2032, 0x2264, 0x2044, 0x221E, 0x0192, 0x2663, | 346 0x00D7, 0x221D, 0x2202, 0x2022, 0x00F7, 0x2260, 0x2261, 0x2248, 0x2026, |
221 0x2666, 0x2665, 0x2660, 0x2194, 0x2190, 0x2191, 0x2192, 0x2193, | 347 0xF8E6, 0xF8E7, 0x21B5, 0x2135, 0x2111, 0x211C, 0x2118, 0x2297, 0x2295, |
222 0x00B0, 0x00B1, 0x2033, 0x2265, 0x00D7, 0x221D, 0x2202, 0x2022, | 348 0x2205, 0x2229, 0x222A, 0x2283, 0x2287, 0x2284, 0x2282, 0x2286, 0x2208, |
223 0x00F7, 0x2260, 0x2261, 0x2248, 0x2026, 0xF8E6, 0xF8E7, 0x21B5, | 349 0x2209, 0x2220, 0x2207, 0xF6DA, 0xF6D9, 0xF6DB, 0x220F, 0x221A, 0x22C5, |
224 0x2135, 0x2111, 0x211C, 0x2118, 0x2297, 0x2295, 0x2205, 0x2229, | 350 0x00AC, 0x2227, 0x2228, 0x21D4, 0x21D0, 0x21D1, 0x21D2, 0x21D3, 0x25CA, |
225 0x222A, 0x2283, 0x2287, 0x2284, 0x2282, 0x2286, 0x2208, 0x2209, | 351 0x2329, 0xF8E8, 0xF8E9, 0xF8EA, 0x2211, 0xF8EB, 0xF8EC, 0xF8ED, 0xF8EE, |
226 0x2220, 0x2207, 0xF6DA, 0xF6D9, 0xF6DB, 0x220F, 0x221A, 0x22C5, | 352 0xF8EF, 0xF8F0, 0xF8F1, 0xF8F2, 0xF8F3, 0xF8F4, 0x0000, 0x232A, 0x222B, |
227 0x00AC, 0x2227, 0x2228, 0x21D4, 0x21D0, 0x21D1, 0x21D2, 0x21D3, | 353 0x2320, 0xF8F5, 0x2321, 0xF8F6, 0xF8F7, 0xF8F8, 0xF8F9, 0xF8FA, 0xF8FB, |
228 0x25CA, 0x2329, 0xF8E8, 0xF8E9, 0xF8EA, 0x2211, 0xF8EB, 0xF8EC, | 354 0xF8FC, 0xF8FD, 0xF8FE, 0x0000, |
229 0xF8ED, 0xF8EE, 0xF8EF, 0xF8F0, 0xF8F1, 0xF8F2, 0xF8F3, 0xF8F4, | |
230 0x0000, 0x232A, 0x222B, 0x2320, 0xF8F5, 0x2321, 0xF8F6, 0xF8F7, | |
231 0xF8F8, 0xF8F9, 0xF8FA, 0xF8FB, 0xF8FC, 0xF8FD, 0xF8FE, 0x0000, | |
232 }; | 355 }; |
233 const FX_WORD ZapfEncoding[256] = { | 356 const FX_WORD ZapfEncoding[256] = { |
234 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 357 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
235 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 358 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
236 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 359 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
237 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 360 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x2701, 0x2702, 0x2703, |
238 0x0020, 0x2701, 0x2702, 0x2703, 0x2704, 0x260E, 0x2706, 0x2707, | 361 0x2704, 0x260E, 0x2706, 0x2707, 0x2708, 0x2709, 0x261B, 0x261E, 0x270C, |
239 0x2708, 0x2709, 0x261B, 0x261E, 0x270C, 0x270D, 0x270E, 0x270F, | 362 0x270D, 0x270E, 0x270F, 0x2710, 0x2711, 0x2712, 0x2713, 0x2714, 0x2715, |
240 0x2710, 0x2711, 0x2712, 0x2713, 0x2714, 0x2715, 0x2716, 0x2717, | 363 0x2716, 0x2717, 0x2718, 0x2719, 0x271A, 0x271B, 0x271C, 0x271D, 0x271E, |
241 0x2718, 0x2719, 0x271A, 0x271B, 0x271C, 0x271D, 0x271E, 0x271F, | 364 0x271F, 0x2720, 0x2721, 0x2722, 0x2723, 0x2724, 0x2725, 0x2726, 0x2727, |
242 0x2720, 0x2721, 0x2722, 0x2723, 0x2724, 0x2725, 0x2726, 0x2727, | 365 0x2605, 0x2729, 0x272A, 0x272B, 0x272C, 0x272D, 0x272E, 0x272F, 0x2730, |
243 0x2605, 0x2729, 0x272A, 0x272B, 0x272C, 0x272D, 0x272E, 0x272F, | 366 0x2731, 0x2732, 0x2733, 0x2734, 0x2735, 0x2736, 0x2737, 0x2738, 0x2739, |
244 0x2730, 0x2731, 0x2732, 0x2733, 0x2734, 0x2735, 0x2736, 0x2737, | 367 0x273A, 0x273B, 0x273C, 0x273D, 0x273E, 0x273F, 0x2740, 0x2741, 0x2742, |
245 0x2738, 0x2739, 0x273A, 0x273B, 0x273C, 0x273D, 0x273E, 0x273F, | 368 0x2743, 0x2744, 0x2745, 0x2746, 0x2747, 0x2748, 0x2749, 0x274A, 0x274B, |
246 0x2740, 0x2741, 0x2742, 0x2743, 0x2744, 0x2745, 0x2746, 0x2747, | 369 0x25CF, 0x274D, 0x25A0, 0x274F, 0x2750, 0x2751, 0x2752, 0x25B2, 0x25BC, |
247 0x2748, 0x2749, 0x274A, 0x274B, 0x25CF, 0x274D, 0x25A0, 0x274F, | 370 0x25C6, 0x2756, 0x25D7, 0x2758, 0x2759, 0x275A, 0x275B, 0x275C, 0x275D, |
248 0x2750, 0x2751, 0x2752, 0x25B2, 0x25BC, 0x25C6, 0x2756, 0x25D7, | 371 0x275E, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
249 0x2758, 0x2759, 0x275A, 0x275B, 0x275C, 0x275D, 0x275E, 0x0000, | 372 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
250 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 373 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
251 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 374 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2761, |
252 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 375 0x2762, 0x2763, 0x2764, 0x2765, 0x2766, 0x2767, 0x2663, 0x2666, 0x2665, |
253 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, | 376 0x2660, 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, |
254 0x0000, 0x2761, 0x2762, 0x2763, 0x2764, 0x2765, 0x2766, 0x2767, | 377 0x2468, 0x2469, 0x2776, 0x2777, 0x2778, 0x2779, 0x277A, 0x277B, 0x277C, |
255 0x2663, 0x2666, 0x2665, 0x2660, 0x2460, 0x2461, 0x2462, 0x2463, | 378 0x277D, 0x277E, 0x277F, 0x2780, 0x2781, 0x2782, 0x2783, 0x2784, 0x2785, |
256 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, 0x2776, 0x2777, | 379 0x2786, 0x2787, 0x2788, 0x2789, 0x278A, 0x278B, 0x278C, 0x278D, 0x278E, |
257 0x2778, 0x2779, 0x277A, 0x277B, 0x277C, 0x277D, 0x277E, 0x277F, | 380 0x278F, 0x2790, 0x2791, 0x2792, 0x2793, 0x2794, 0x2192, 0x2194, 0x2195, |
258 0x2780, 0x2781, 0x2782, 0x2783, 0x2784, 0x2785, 0x2786, 0x2787, | 381 0x2798, 0x2799, 0x279A, 0x279B, 0x279C, 0x279D, 0x279E, 0x279F, 0x27A0, |
259 0x2788, 0x2789, 0x278A, 0x278B, 0x278C, 0x278D, 0x278E, 0x278F, | 382 0x27A1, 0x27A2, 0x27A3, 0x27A4, 0x27A5, 0x27A6, 0x27A7, 0x27A8, 0x27A9, |
260 0x2790, 0x2791, 0x2792, 0x2793, 0x2794, 0x2192, 0x2194, 0x2195, | 383 0x27AA, 0x27AB, 0x27AC, 0x27AD, 0x27AE, 0x27AF, 0x0000, 0x27B1, 0x27B2, |
261 0x2798, 0x2799, 0x279A, 0x279B, 0x279C, 0x279D, 0x279E, 0x279F, | 384 0x27B3, 0x27B4, 0x27B5, 0x27B6, 0x27B7, 0x27B8, 0x27B9, 0x27BA, 0x27BB, |
262 0x27A0, 0x27A1, 0x27A2, 0x27A3, 0x27A4, 0x27A5, 0x27A6, 0x27A7, | 385 0x27BC, 0x27BD, 0x27BE, 0x0000, |
263 0x27A8, 0x27A9, 0x27AA, 0x27AB, 0x27AC, 0x27AD, 0x27AE, 0x27AF, | |
264 0x0000, 0x27B1, 0x27B2, 0x27B3, 0x27B4, 0x27B5, 0x27B6, 0x27B7, | |
265 0x27B8, 0x27B9, 0x27BA, 0x27BB, 0x27BC, 0x27BD, 0x27BE, 0x0000, | |
266 }; | 386 }; |
267 const FX_LPCSTR StandardEncodingNames[224] = { | 387 const FX_LPCSTR StandardEncodingNames[224] = { |
268 "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand
", "quoteright", | 388 "space", "exclam", "quotedbl", "numbersign", |
269 "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period",
"slash", | 389 "dollar", "percent", "ampersand", "quoteright", |
270 "zero", "one", "two", "three", "four", "five", "six", "seven", | 390 "parenleft", "parenright", "asterisk", "plus", |
271 "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question
", | 391 "comma", "hyphen", "period", "slash", |
272 "at", "A", "B", "C", "D", "E", "F", "G", | 392 "zero", "one", "two", "three", |
273 "H", "I", "J", "K", "L", "M", "N", "O", | 393 "four", "five", "six", "seven", |
274 "P", "Q", "R", "S", "T", "U", "V", "W", | 394 "eight", "nine", "colon", "semicolon", |
275 "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum", "u
nderscore", | 395 "less", "equal", "greater", "question", |
276 "quoteleft", "a", "b", "c", "d", "e", "f", "g", | 396 "at", "A", "B", "C", |
277 "h", "i", "j", "k", "l", "m", "n", "o", | 397 "D", "E", "F", "G", |
278 "p", "q", "r", "s", "t", "u", "v", "w", | 398 "H", "I", "J", "K", |
279 "x", "y", "z", "braceleft", "bar", "braceright", "asciitilde", NULL, | 399 "L", "M", "N", "O", |
280 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 400 "P", "Q", "R", "S", |
281 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 401 "T", "U", "V", "W", |
282 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 402 "X", "Y", "Z", "bracketleft", |
283 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 403 "backslash", "bracketright", "asciicircum", "underscore", |
284 NULL, "exclamdown", "cent", "sterling", "fraction", "yen", "florin", "sectio
n", | 404 "quoteleft", "a", "b", "c", |
285 "currency", "quotesingle", "quotedblleft", "guillemotleft", "guilsinglleft",
"guilsinglright", "fi", "fl", | 405 "d", "e", "f", "g", |
286 NULL, "endash", "dagger", "daggerdbl", "periodcentered", NULL, "paragraph",
"bullet", | 406 "h", "i", "j", "k", |
287 "quotesinglbase", "quotedblbase", "quotedblright", "guillemotright", "ellips
is", "perthousand", NULL, "questiondown", | 407 "l", "m", "n", "o", |
288 NULL, "grave", "acute", "circumflex", "tilde", "macron", "breve", "dotaccent
", | 408 "p", "q", "r", "s", |
289 "dieresis", NULL, "ring", "cedilla", NULL, "hungarumlaut", "ogonek", "caron"
, | 409 "t", "u", "v", "w", |
290 "emdash", NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 410 "x", "y", "z", "braceleft", |
291 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 411 "bar", "braceright", "asciitilde", NULL, |
292 NULL, "AE", NULL, "ordfeminine", NULL, NULL, NULL, NULL, | 412 NULL, NULL, NULL, NULL, |
293 "Lslash", "Oslash", "OE", "ordmasculine", NULL, NULL, NULL, NULL, | 413 NULL, NULL, NULL, NULL, |
294 NULL, "ae", NULL, NULL, NULL, "dotlessi", NULL, NULL, | 414 NULL, NULL, NULL, NULL, |
295 "lslash", "oslash", "oe", "germandbls", NULL, NULL, NULL, NULL, | 415 NULL, NULL, NULL, NULL, |
| 416 NULL, NULL, NULL, NULL, |
| 417 NULL, NULL, NULL, NULL, |
| 418 NULL, NULL, NULL, NULL, |
| 419 NULL, NULL, NULL, NULL, |
| 420 NULL, "exclamdown", "cent", "sterling", |
| 421 "fraction", "yen", "florin", "section", |
| 422 "currency", "quotesingle", "quotedblleft", "guillemotleft", |
| 423 "guilsinglleft", "guilsinglright", "fi", "fl", |
| 424 NULL, "endash", "dagger", "daggerdbl", |
| 425 "periodcentered", NULL, "paragraph", "bullet", |
| 426 "quotesinglbase", "quotedblbase", "quotedblright", "guillemotright", |
| 427 "ellipsis", "perthousand", NULL, "questiondown", |
| 428 NULL, "grave", "acute", "circumflex", |
| 429 "tilde", "macron", "breve", "dotaccent", |
| 430 "dieresis", NULL, "ring", "cedilla", |
| 431 NULL, "hungarumlaut", "ogonek", "caron", |
| 432 "emdash", NULL, NULL, NULL, |
| 433 NULL, NULL, NULL, NULL, |
| 434 NULL, NULL, NULL, NULL, |
| 435 NULL, NULL, NULL, NULL, |
| 436 NULL, "AE", NULL, "ordfeminine", |
| 437 NULL, NULL, NULL, NULL, |
| 438 "Lslash", "Oslash", "OE", "ordmasculine", |
| 439 NULL, NULL, NULL, NULL, |
| 440 NULL, "ae", NULL, NULL, |
| 441 NULL, "dotlessi", NULL, NULL, |
| 442 "lslash", "oslash", "oe", "germandbls", |
| 443 NULL, NULL, NULL, NULL, |
296 }; | 444 }; |
297 const FX_LPCSTR AdobeWinAnsiEncodingNames[224] = { | 445 const FX_LPCSTR AdobeWinAnsiEncodingNames[224] = { |
298 "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand
", "quotesingle", | 446 "space", "exclam", "quotedbl", "numbersign", |
299 "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period",
"slash", | 447 "dollar", "percent", "ampersand", "quotesingle", |
300 "zero", "one", "two", "three", "four", "five", "six", "seven", | 448 "parenleft", "parenright", "asterisk", "plus", |
301 "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question
", | 449 "comma", "hyphen", "period", "slash", |
302 "at", "A", "B", "C", "D", "E", "F", "G", | 450 "zero", "one", "two", "three", |
303 "H", "I", "J", "K", "L", "M", "N", "O", | 451 "four", "five", "six", "seven", |
304 "P", "Q", "R", "S", "T", "U", "V", "W", | 452 "eight", "nine", "colon", "semicolon", |
305 "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum", "u
nderscore", | 453 "less", "equal", "greater", "question", |
306 "grave", "a", "b", "c", "d", "e", "f", "g", | 454 "at", "A", "B", "C", |
307 "h", "i", "j", "k", "l", "m", "n", "o", | 455 "D", "E", "F", "G", |
308 "p", "q", "r", "s", "t", "u", "v", "w", | 456 "H", "I", "J", "K", |
309 "x", "y", "z", "braceleft", "bar", "braceright", "asciitilde", "bullet", | 457 "L", "M", "N", "O", |
310 "Euro", "bullet", "quotesinglbase", "florin", "quotedblbase", "ellipsis", "d
agger", "daggerdbl", | 458 "P", "Q", "R", "S", |
311 "circumflex", "perthousand", "Scaron", "guilsinglleft", "OE", "bullet", "Zca
ron", "bullet", | 459 "T", "U", "V", "W", |
312 "bullet", "quoteleft", "quoteright", "quotedblleft", "quotedblright", "bulle
t", "endash", "emdash", | 460 "X", "Y", "Z", "bracketleft", |
313 "tilde", "trademark", "scaron", "guilsinglright", "oe", "bullet", "zcaron",
"Ydieresis", | 461 "backslash", "bracketright", "asciicircum", "underscore", |
314 "space", "exclamdown", "cent", "sterling", "currency", "yen", "brokenbar", "
section", | 462 "grave", "a", "b", "c", |
315 "dieresis", "copyright", "ordfeminine", "guillemotleft", "logicalnot", "hyph
en", "registered", "macron", | 463 "d", "e", "f", "g", |
316 "degree", "plusminus", "twosuperior", "threesuperior", "acute", "mu", "parag
raph", "periodcentered", | 464 "h", "i", "j", "k", |
317 "cedilla", "onesuperior", "ordmasculine", "guillemotright", "onequarter", "o
nehalf", "threequarters", "questiondown", | 465 "l", "m", "n", "o", |
318 "Agrave", "Aacute", "Acircumflex", "Atilde", "Adieresis", "Aring", "AE", "Cc
edilla", | 466 "p", "q", "r", "s", |
319 "Egrave", "Eacute", "Ecircumflex", "Edieresis", "Igrave", "Iacute", "Icircum
flex", "Idieresis", | 467 "t", "u", "v", "w", |
320 "Eth", "Ntilde", "Ograve", "Oacute", "Ocircumflex", "Otilde", "Odieresis", "
multiply", | 468 "x", "y", "z", "braceleft", |
321 "Oslash", "Ugrave", "Uacute", "Ucircumflex", "Udieresis", "Yacute", "Thorn",
"germandbls", | 469 "bar", "braceright", "asciitilde", "bullet", |
322 "agrave", "aacute", "acircumflex", "atilde", "adieresis", "aring", "ae", "cc
edilla", | 470 "Euro", "bullet", "quotesinglbase", "florin", |
323 "egrave", "eacute", "ecircumflex", "edieresis", "igrave", "iacute", "icircum
flex", "idieresis", | 471 "quotedblbase", "ellipsis", "dagger", "daggerdbl", |
324 "eth", "ntilde", "ograve", "oacute", "ocircumflex", "otilde", "odieresis", "
divide", | 472 "circumflex", "perthousand", "Scaron", "guilsinglleft", |
325 "oslash", "ugrave", "uacute", "ucircumflex", "udieresis", "yacute", "thorn",
"ydieresis", | 473 "OE", "bullet", "Zcaron", "bullet", |
326 }; | 474 "bullet", "quoteleft", "quoteright", "quotedblleft", |
327 const FX_LPCSTR MacRomanEncodingNames[224] = { | 475 "quotedblright", "bullet", "endash", "emdash", |
328 "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand
", "quotesingle", | 476 "tilde", "trademark", "scaron", "guilsinglright", |
329 "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period",
"slash", | 477 "oe", "bullet", "zcaron", "Ydieresis", |
330 "zero", "one", "two", "three", "four", "five", "six", "seven", | 478 "space", "exclamdown", "cent", "sterling", |
331 "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question
", | 479 "currency", "yen", "brokenbar", "section", |
332 "at", "A", "B", "C", "D", "E", "F", "G", | 480 "dieresis", "copyright", "ordfeminine", "guillemotleft", |
333 "H", "I", "J", "K", "L", "M", "N", "O", | 481 "logicalnot", "hyphen", "registered", "macron", |
334 "P", "Q", "R", "S", "T", "U", "V", "W", | 482 "degree", "plusminus", "twosuperior", "threesuperior", |
335 "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum", "u
nderscore", | 483 "acute", "mu", "paragraph", "periodcentered", |
336 "grave", "a", "b", "c", "d", "e", "f", "g", | 484 "cedilla", "onesuperior", "ordmasculine", "guillemotright", |
337 "h", "i", "j", "k", "l", "m", "n", "o", | 485 "onequarter", "onehalf", "threequarters", "questiondown", |
338 "p", "q", "r", "s", "t", "u", "v", "w", | 486 "Agrave", "Aacute", "Acircumflex", "Atilde", |
339 "x", "y", "z", "braceleft", "bar", "braceright", "asciitilde", NULL, | 487 "Adieresis", "Aring", "AE", "Ccedilla", |
340 "Adieresis", "Aring", "Ccedilla", "Eacute", "Ntilde", "Odieresis", "Udieresi
s", "aacute", | 488 "Egrave", "Eacute", "Ecircumflex", "Edieresis", |
341 "agrave", "acircumflex", "adieresis", "atilde", "aring", "ccedilla", "eacute
", "egrave", | 489 "Igrave", "Iacute", "Icircumflex", "Idieresis", |
342 "ecircumflex", "edieresis", "iacute", "igrave", "icircumflex", "idieresis",
"ntilde", "oacute", | 490 "Eth", "Ntilde", "Ograve", "Oacute", |
343 "ograve", "ocircumflex", "odieresis", "otilde", "uacute", "ugrave", "ucircum
flex", "udieresis", | 491 "Ocircumflex", "Otilde", "Odieresis", "multiply", |
344 "dagger", "degree", "cent", "sterling", "section", "bullet", "paragraph", "g
ermandbls", | 492 "Oslash", "Ugrave", "Uacute", "Ucircumflex", |
345 "registered", "copyright", "trademark", "acute", "dieresis", "notequal", "AE
", "Oslash", | 493 "Udieresis", "Yacute", "Thorn", "germandbls", |
346 "infinity", "plusminus", "lessequal", "greaterequal", "yen", "mu", "partiald
iff", "summation", | 494 "agrave", "aacute", "acircumflex", "atilde", |
347 "product", "pi", "integral", "ordfeminine", "ordmasculine", "Omega", "ae", "
oslash", | 495 "adieresis", "aring", "ae", "ccedilla", |
348 "questiondown", "exclamdown", "logicalnot", "radical", "florin", "approxequa
l", "Delta", "guillemotleft", | 496 "egrave", "eacute", "ecircumflex", "edieresis", |
349 "guillemotright", "ellipsis", "space", "Agrave", "Atilde", "Otilde", "OE", "
oe", | 497 "igrave", "iacute", "icircumflex", "idieresis", |
350 "endash", "emdash", "quotedblleft", "quotedblright", "quoteleft", "quoterigh
t", "divide", "lozenge", | 498 "eth", "ntilde", "ograve", "oacute", |
351 "ydieresis", "Ydieresis", "fraction", "currency", "guilsinglleft", "guilsing
lright", "fi", "fl", | 499 "ocircumflex", "otilde", "odieresis", "divide", |
352 "daggerdbl", "periodcentered", "quotesinglbase", "quotedblbase", "perthousan
d", "Acircumflex", "Ecircumflex", "Aacute", | 500 "oslash", "ugrave", "uacute", "ucircumflex", |
353 "Edieresis", "Egrave", "Iacute", "Icircumflex", "Idieresis", "Igrave", "Oacu
te", "Ocircumflex", | 501 "udieresis", "yacute", "thorn", "ydieresis", |
354 "apple", "Ograve", "Uacute", "Ucircumflex", "Ugrave", "dotlessi", "circumfle
x", "tilde", | 502 }; |
355 "macron", "breve", "dotaccent", "ring", "cedilla", "hungarumlaut", "ogonek",
"caron", | 503 const FX_LPCSTR MacRomanEncodingNames[224] = { |
356 }; | 504 "space", "exclam", "quotedbl", "numbersign", |
357 const FX_LPCSTR MacExpertEncodingNames[224] = { | 505 "dollar", "percent", "ampersand", "quotesingle", |
358 "space", "exclamsmall", "Hungarumlautsmall", "centoldstyle", "dollaroldstyle
", "dollarsuperior", "ampersandsmall", "Acutesmall", | 506 "parenleft", "parenright", "asterisk", "plus", |
359 "parenleftsuperior", "parenrightsuperior", "twodotenleader", "onedotenleader
", "comma", "hyphen", "period", "fraction", | 507 "comma", "hyphen", "period", "slash", |
360 "zerooldstyle", "oneoldstyle", "twooldstyle", "threeoldstyle", "fouroldstyle
", "fiveoldstyle", "sixoldstyle", "sevenoldstyle", | 508 "zero", "one", "two", "three", |
361 "eightoldstyle", "nineoldstyle", "colon", "semicolon", NULL, "threequarterse
mdash", NULL, "questionsmall", | 509 "four", "five", "six", "seven", |
362 NULL, NULL, NULL, NULL, "Ethsmall", NULL, NULL, "onequarter", | 510 "eight", "nine", "colon", "semicolon", |
363 "onehalf", "threequarters", "oneeighth", "threeeighths", "fiveeighths", "sev
eneighths", "onethird", "twothirds", | 511 "less", "equal", "greater", "question", |
364 NULL, NULL, NULL, NULL, NULL, NULL, "ff", "fi", | 512 "at", "A", "B", "C", |
365 "fl", "ffi", "ffl", "parenleftinferior", NULL, "parenrightinferior", "Circum
flexsmall", "hypheninferior", | 513 "D", "E", "F", "G", |
366 "Gravesmall", "Asmall", "Bsmall", "Csmall", "Dsmall", "Esmall", "Fsmall", "G
small", | 514 "H", "I", "J", "K", |
367 "Hsmall", "Ismall", "Jsmall", "Ksmall", "Lsmall", "Msmall", "Nsmall", "Osmal
l", | 515 "L", "M", "N", "O", |
368 "Psmall", "Qsmall", "Rsmall", "Ssmall", "Tsmall", "Usmall", "Vsmall", "Wsmal
l", | 516 "P", "Q", "R", "S", |
369 "Xsmall", "Ysmall", "Zsmall", "colonmonetary", "onefitted", "rupiah", "Tilde
small", NULL, | 517 "T", "U", "V", "W", |
370 NULL, "asuperior", "centsuperior", NULL, NULL, NULL, NULL, "Aacutesmall", | 518 "X", "Y", "Z", "bracketleft", |
371 "Agravesmall", "Acircumflexsmall", "Adieresissmall", "Atildesmall", "Aringsm
all", "Ccedillasmall", "Eacutesmall", "Egravesmall", | 519 "backslash", "bracketright", "asciicircum", "underscore", |
372 "Ecircumflexsmall", "Edieresissmall", "Iacutesmall", "Igravesmall", "Icircum
flexsmall", "Idieresissmall", "Ntildesmall", "Oacutesmall", | 520 "grave", "a", "b", "c", |
373 "Ogravesmall", "Ocircumflexsmall", "Odieresissmall", "Otildesmall", "Uacutes
mall", "Ugravesmall", "Ucircumflexsmall", "Udieresissmall", | 521 "d", "e", "f", "g", |
374 NULL, "eightsuperior", "fourinferior", "threeinferior", "sixinferior", "eigh
tinferior", "seveninferior", "Scaronsmall", | 522 "h", "i", "j", "k", |
375 NULL, "centinferior", "twoinferior", NULL, "Dieresissmall", NULL, "Caronsmal
l", "Scaronsmall", | 523 "l", "m", "n", "o", |
376 "fiveinferior", NULL, "commainferior", "periodinferior", "Yacutesmall", NULL
, "dollarinferior", NULL, | 524 "p", "q", "r", "s", |
377 NULL, "Thornsmall", NULL, "nineinferior", "zeroinferior", "Zcaronsmall", "AE
small", "Oslashsmall", | 525 "t", "u", "v", "w", |
378 "questiondownsmall", "oneinferior", "asuperior", NULL, NULL, NULL, NULL, NUL
L, | 526 "x", "y", "z", "braceleft", |
379 NULL, "Cedillasmall", NULL, NULL, NULL, NULL, NULL, "OEsmall", | 527 "bar", "braceright", "asciitilde", NULL, |
380 "figuredash", "hyphensuperior", NULL, NULL, NULL, NULL, "exclamdownsmall", N
ULL, | 528 "Adieresis", "Aring", "Ccedilla", "Eacute", |
381 "Ydieresissmall", NULL, "onesuperior", "twosuperior", "threesuperior", "four
superior", "fivesuperior", "sixsuperior", | 529 "Ntilde", "Odieresis", "Udieresis", "aacute", |
382 "sevensuperior", "ninesuperior", "zerosuperior", NULL, "esuperior", "rsuperi
or", NULL, NULL, | 530 "agrave", "acircumflex", "adieresis", "atilde", |
383 NULL, "isuperior", "ssuperior", "dsuperior", NULL, NULL, NULL, NULL, | 531 "aring", "ccedilla", "eacute", "egrave", |
384 NULL, "lsuperior", "Ogoneksmall", "Brevesmall", "Macronsmall", "bsuperior",
"nsuperior", "msuperior", | 532 "ecircumflex", "edieresis", "iacute", "igrave", |
385 "commasuperior", "periodsuperior", "Dotaccentsmall", "Ringsmall", NULL, NULL
, NULL, NULL, | 533 "icircumflex", "idieresis", "ntilde", "oacute", |
386 }; | 534 "ograve", "ocircumflex", "odieresis", "otilde", |
387 const FX_LPCSTR PDFDocEncodingNames[232] = { | 535 "uacute", "ugrave", "ucircumflex", "udieresis", |
388 "breve", "caron", "circumflex", "dotaccent", "hungarumlaut", "ogonek", "ring
", "tilde", | 536 "dagger", "degree", "cent", "sterling", |
389 "space", "exclam", "quotedbl", "numbersign", "dollar", "percent", "ampersand
", "quotesingle", | 537 "section", "bullet", "paragraph", "germandbls", |
390 "parenleft", "parenright", "asterisk", "plus", "comma", "hyphen", "period",
"slash", | 538 "registered", "copyright", "trademark", "acute", |
391 "zero", "one", "two", "three", "four", "five", "six", "seven", | 539 "dieresis", "notequal", "AE", "Oslash", |
392 "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question
", | 540 "infinity", "plusminus", "lessequal", "greaterequal", |
393 "at", "A", "B", "C", "D", "E", "F", "G", | 541 "yen", "mu", "partialdiff", "summation", |
394 "H", "I", "J", "K", "L", "M", "N", "O", | 542 "product", "pi", "integral", "ordfeminine", |
395 "P", "Q", "R", "S", "T", "U", "V", "W", | 543 "ordmasculine", "Omega", "ae", "oslash", |
396 "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum", "u
nderscore", | 544 "questiondown", "exclamdown", "logicalnot", "radical", |
397 "grave", "a", "b", "c", "d", "e", "f", "g", | 545 "florin", "approxequal", "Delta", "guillemotleft", |
398 "h", "i", "j", "k", "l", "m", "n", "o", | 546 "guillemotright", "ellipsis", "space", "Agrave", |
399 "p", "q", "r", "s", "t", "u", "v", "w", | 547 "Atilde", "Otilde", "OE", "oe", |
400 "x", "y", "z", "braceleft", "bar", "braceright", "asciitilde", NULL, | 548 "endash", "emdash", "quotedblleft", "quotedblright", |
401 "bullet3", "dagger", "daggerdbl", "ellipsis", "emdash", "endash", "florin",
"fraction", | 549 "quoteleft", "quoteright", "divide", "lozenge", |
402 "guilsinglleft", "guilsinglright", "minus", "perthousand", "quotedblbase", "
quotedblleft", "quotedblright", "quoteleft", | 550 "ydieresis", "Ydieresis", "fraction", "currency", |
403 "quoteright", "quotesinglbase", "trademark", "fi", "fl", "Lslash", "OE", "Sc
aron", | 551 "guilsinglleft", "guilsinglright", "fi", "fl", |
404 "Ydieresis", "Zcaron2", "dotlessi", "lslash", "oe", "scaron", "zcaron2", NUL
L, | 552 "daggerdbl", "periodcentered", "quotesinglbase", "quotedblbase", |
405 "Euro", "exclamdown", "cent", "sterling", "currency", "yen", "brokenbar", "s
ection", | 553 "perthousand", "Acircumflex", "Ecircumflex", "Aacute", |
406 "dieresis", "copyright", "ordfeminine", "guillemotleft4", "logicalnot", NULL
, "registered", "macron", | 554 "Edieresis", "Egrave", "Iacute", "Icircumflex", |
407 "degree", "plusminus", "twosuperior", "threesuperior", "acute", "mu", "parag
raph", "periodcentered", | 555 "Idieresis", "Igrave", "Oacute", "Ocircumflex", |
408 "cedilla", "onesuperior", "ordmasculine", "guillemotright4", "onequarter", "
onehalf", "threequarters", "questiondown", | 556 "apple", "Ograve", "Uacute", "Ucircumflex", |
409 "Agrave", "Aacute", "Acircumflex", "Atilde", "Adieresis", "Aring", "AE", "Cc
edilla", | 557 "Ugrave", "dotlessi", "circumflex", "tilde", |
410 "Egrave", "Eacute", "Ecircumflex", "Edieresis", "Igrave", "Iacute", "Icircum
flex", "Idieresis", | 558 "macron", "breve", "dotaccent", "ring", |
411 "Eth", "Ntilde", "Ograve", "Oacute", "Ocircumflex", "Otilde", "Odieresis", "
multiply", | 559 "cedilla", "hungarumlaut", "ogonek", "caron", |
412 "Oslash", "Ugrave", "Uacute", "Ucircumflex", "Udieresis", "Yacute", "Thorn",
"germandbls", | 560 }; |
413 "agrave", "aacute", "acircumflex", "atilde", "adieresis", "aring", "ae", "cc
edilla", | 561 const FX_LPCSTR MacExpertEncodingNames[224] = { |
414 "egrave", "eacute", "ecircumflex", "edieresis", "igrave", "iacute", "icircum
flex", "idieresis", | 562 "space", "exclamsmall", "Hungarumlautsmall", |
415 "eth", "ntilde", "ograve", "oacute", "ocircumflex", "otilde", "odieresis", "
divide", | 563 "centoldstyle", "dollaroldstyle", "dollarsuperior", |
416 "oslash", "ugrave", "uacute", "ucircumflex", "udieresis", "yacute", "thorn",
"ydieresis", | 564 "ampersandsmall", "Acutesmall", "parenleftsuperior", |
417 }; | 565 "parenrightsuperior", "twodotenleader", "onedotenleader", |
418 const FX_LPCSTR AdobeSymbolEncodingNames[224] = { | 566 "comma", "hyphen", "period", |
419 "space", "exclam", "universal", "numbersign", "existential", "percent", "amp
ersand", "suchthat", | 567 "fraction", "zerooldstyle", "oneoldstyle", |
420 "parenleft", "parenright", "asteriskmath", "plus", "comma", "minus", "period
", "slash", | 568 "twooldstyle", "threeoldstyle", "fouroldstyle", |
421 "zero", "one", "two", "three", "four", "five", "six", "seven", | 569 "fiveoldstyle", "sixoldstyle", "sevenoldstyle", |
422 "eight", "nine", "colon", "semicolon", "less", "equal", "greater", "question
", | 570 "eightoldstyle", "nineoldstyle", "colon", |
423 "congruent", "Alpha", "Beta", "Chi", "Delta", "Epsilon", "Phi", "Gamma", | 571 "semicolon", NULL, "threequartersemdash", |
424 "Eta", "Iota", "theta1", "Kappa", "Lambda", "Mu", "Nu", "Omicron", | 572 NULL, "questionsmall", NULL, |
425 "Pi", "Theta", "Rho", "Sigma", "Tau", "Upsilon", "sigma1", "Omega", | 573 NULL, NULL, NULL, |
426 "Xi", "Psi", "Zeta", "bracketleft", "therefore", "bracketright", "perpendicu
lar", "underscore", | 574 "Ethsmall", NULL, NULL, |
427 "radicalex", "alpha", "beta", "chi", "delta", "epsilon", "phi", "gamma", | 575 "onequarter", "onehalf", "threequarters", |
428 "eta", "iota", "phi1", "kappa", "lambda", "mu", "nu", "omicron", | 576 "oneeighth", "threeeighths", "fiveeighths", |
429 "pi", "theta", "rho", "sigma", "tau", "upsilon", "omega1", "omega", | 577 "seveneighths", "onethird", "twothirds", |
430 "xi", "psi", "zeta", "braceleft", "bar", "braceright", "similar", NULL, | 578 NULL, NULL, NULL, |
431 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 579 NULL, NULL, NULL, |
432 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 580 "ff", "fi", "fl", |
433 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 581 "ffi", "ffl", "parenleftinferior", |
434 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 582 NULL, "parenrightinferior", "Circumflexsmall", |
435 "Euro", "Upsilon1", "minute", "lessequal", "fraction", "infinity", "florin",
"club", | 583 "hypheninferior", "Gravesmall", "Asmall", |
436 "diamond", "heart", "spade", "arrowboth", "arrowleft", "arrowup", "arrowrigh
t", "arrowdown", | 584 "Bsmall", "Csmall", "Dsmall", |
437 "degree", "plusminus", "second", "greaterequal", "multiply", "proportional",
"partialdiff", "bullet", | 585 "Esmall", "Fsmall", "Gsmall", |
438 "divide", "notequal", "equivalence", "approxequal", "ellipsis", "arrowvertex
", "arrowhorizex", "carriagereturn", | 586 "Hsmall", "Ismall", "Jsmall", |
439 "aleph", "Ifraktur", "Rfraktur", "weierstrass", "circlemultiply", "circleplu
s", "emptyset", "intersection", | 587 "Ksmall", "Lsmall", "Msmall", |
440 "union", "propersuperset", "reflexsuperset", "notsubset", "propersubset", "r
eflexsubset", "element", "notelement", | 588 "Nsmall", "Osmall", "Psmall", |
441 "angle", "gradient", "registerserif", "copyrightserif", "trademarkserif", "p
roduct", "radical", "dotmath", | 589 "Qsmall", "Rsmall", "Ssmall", |
442 "logicalnot", "logicaland", "logicalor", "arrowdblboth", "arrowdblleft", "ar
rowdblup", "arrowdblright", "arrowdbldown", | 590 "Tsmall", "Usmall", "Vsmall", |
443 "lozenge", "angleleft", "registersans", "copyrightsans", "trademarksans", "s
ummation", "parenlefttp", "parenleftex", | 591 "Wsmall", "Xsmall", "Ysmall", |
444 "parenleftbt", "bracketlefttp", "bracketleftex", "bracketleftbt", "braceleft
tp", "braceleftmid", "braceleftbt", "braceex", | 592 "Zsmall", "colonmonetary", "onefitted", |
445 NULL, "angleright", "integral", "integraltp", "integralex", "integralbt", "p
arenrighttp", "parenrightex", | 593 "rupiah", "Tildesmall", NULL, |
446 "parenrightbt", "bracketrighttp", "bracketrightex", "bracketrightbt", "brace
righttp", "bracerightmid", "bracerightbt", NULL, | 594 NULL, "asuperior", "centsuperior", |
447 }; | 595 NULL, NULL, NULL, |
448 const FX_LPCSTR ZapfEncodingNames[224] = { | 596 NULL, "Aacutesmall", "Agravesmall", |
449 "space", "a1", "a2", "a202", "a3", "a4", "a5", "a119", | 597 "Acircumflexsmall", "Adieresissmall", "Atildesmall", |
450 "a118", "a117", "a11", "a12", "a13", "a14", "a15", "a16", | 598 "Aringsmall", "Ccedillasmall", "Eacutesmall", |
451 "a105", "a17", "a18", "a19", "a20", "a21", "a22", "a23", | 599 "Egravesmall", "Ecircumflexsmall", "Edieresissmall", |
452 "a24", "a25", "a26", "a27", "a28", "a6", "a7", "a8", | 600 "Iacutesmall", "Igravesmall", "Icircumflexsmall", |
453 "a9", "a10", "a29", "a30", "a31", "a32", "a33", "a34", | 601 "Idieresissmall", "Ntildesmall", "Oacutesmall", |
454 "a35", "a36", "a37", "a38", "a39", "a40", "a41", "a42", | 602 "Ogravesmall", "Ocircumflexsmall", "Odieresissmall", |
455 "a43", "a44", "a45", "a46", "a47", "a48", "a49", "a50", | 603 "Otildesmall", "Uacutesmall", "Ugravesmall", |
456 "a51", "a52", "a53", "a54", "a55", "a56", "a57", "a58", | 604 "Ucircumflexsmall", "Udieresissmall", NULL, |
457 "a59", "a60", "a61", "a62", "a63", "a64", "a65", "a66", | 605 "eightsuperior", "fourinferior", "threeinferior", |
458 "a67", "a68", "a69", "a70", "a71", "a72", "a73", "a74", | 606 "sixinferior", "eightinferior", "seveninferior", |
459 "a203", "a75", "a204", "a76", "a77", "a78", "a79", "a81", | 607 "Scaronsmall", NULL, "centinferior", |
460 "a82", "a83", "a84", "a97", "a98", "a99", "a100", NULL, | 608 "twoinferior", NULL, "Dieresissmall", |
461 "a89", "a90", "a93", "a94", "a91", "a92", "a205", "a85", | 609 NULL, "Caronsmall", "Scaronsmall", |
462 "a206", "a86", "a87", "a88", "a95", "a96", NULL, NULL, | 610 "fiveinferior", NULL, "commainferior", |
463 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 611 "periodinferior", "Yacutesmall", NULL, |
464 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, | 612 "dollarinferior", NULL, NULL, |
465 NULL, "a101", "a102", "a103", "a104", "a106", "a107", "a108", | 613 "Thornsmall", NULL, "nineinferior", |
466 "a112", "a111", "a110", "a109", "a120", "a121", "a122", "a123", | 614 "zeroinferior", "Zcaronsmall", "AEsmall", |
467 "a124", "a125", "a126", "a127", "a128", "a129", "a130", "a131", | 615 "Oslashsmall", "questiondownsmall", "oneinferior", |
468 "a132", "a133", "a134", "a135", "a136", "a137", "a138", "a139", | 616 "asuperior", NULL, NULL, |
469 "a140", "a141", "a142", "a143", "a144", "a145", "a146", "a147", | 617 NULL, NULL, NULL, |
470 "a148", "a149", "a150", "a151", "a152", "a153", "a154", "a155", | 618 NULL, "Cedillasmall", NULL, |
471 "a156", "a157", "a158", "a159", "a160", "a161", "a163", "a164", | 619 NULL, NULL, NULL, |
472 "a196", "a165", "a192", "a166", "a167", "a168", "a169", "a170", | 620 NULL, "OEsmall", "figuredash", |
473 "a171", "a172", "a173", "a162", "a174", "a175", "a176", "a177", | 621 "hyphensuperior", NULL, NULL, |
474 "a178", "a179", "a193", "a180", "a199", "a181", "a200", "a182", | 622 NULL, NULL, "exclamdownsmall", |
475 NULL, "a201", "a183", "a184", "a197", "a185", "a194", "a198", | 623 NULL, "Ydieresissmall", NULL, |
476 "a186", "a195", "a187", "a188", "a189", "a190", "a191", NULL | 624 "onesuperior", "twosuperior", "threesuperior", |
477 }; | 625 "foursuperior", "fivesuperior", "sixsuperior", |
478 const FX_CHAR* PDF_CharNameFromPredefinedCharSet(int encoding, FX_BYTE charcode
) | 626 "sevensuperior", "ninesuperior", "zerosuperior", |
479 { | 627 NULL, "esuperior", "rsuperior", |
480 if (encoding == PDFFONT_ENCODING_PDFDOC) { | 628 NULL, NULL, NULL, |
481 if (charcode < 24) { | 629 "isuperior", "ssuperior", "dsuperior", |
482 return NULL; | 630 NULL, NULL, NULL, |
483 } | 631 NULL, NULL, "lsuperior", |
484 charcode -= 24; | 632 "Ogoneksmall", "Brevesmall", "Macronsmall", |
485 } else { | 633 "bsuperior", "nsuperior", "msuperior", |
486 if (charcode < 32) { | 634 "commasuperior", "periodsuperior", "Dotaccentsmall", |
487 return NULL; | 635 "Ringsmall", NULL, NULL, |
488 } | 636 NULL, NULL, |
489 charcode -= 32; | 637 }; |
| 638 const FX_LPCSTR PDFDocEncodingNames[232] = { |
| 639 "breve", "caron", "circumflex", "dotaccent", |
| 640 "hungarumlaut", "ogonek", "ring", "tilde", |
| 641 "space", "exclam", "quotedbl", "numbersign", |
| 642 "dollar", "percent", "ampersand", "quotesingle", |
| 643 "parenleft", "parenright", "asterisk", "plus", |
| 644 "comma", "hyphen", "period", "slash", |
| 645 "zero", "one", "two", "three", |
| 646 "four", "five", "six", "seven", |
| 647 "eight", "nine", "colon", "semicolon", |
| 648 "less", "equal", "greater", "question", |
| 649 "at", "A", "B", "C", |
| 650 "D", "E", "F", "G", |
| 651 "H", "I", "J", "K", |
| 652 "L", "M", "N", "O", |
| 653 "P", "Q", "R", "S", |
| 654 "T", "U", "V", "W", |
| 655 "X", "Y", "Z", "bracketleft", |
| 656 "backslash", "bracketright", "asciicircum", "underscore", |
| 657 "grave", "a", "b", "c", |
| 658 "d", "e", "f", "g", |
| 659 "h", "i", "j", "k", |
| 660 "l", "m", "n", "o", |
| 661 "p", "q", "r", "s", |
| 662 "t", "u", "v", "w", |
| 663 "x", "y", "z", "braceleft", |
| 664 "bar", "braceright", "asciitilde", NULL, |
| 665 "bullet3", "dagger", "daggerdbl", "ellipsis", |
| 666 "emdash", "endash", "florin", "fraction", |
| 667 "guilsinglleft", "guilsinglright", "minus", "perthousand", |
| 668 "quotedblbase", "quotedblleft", "quotedblright", "quoteleft", |
| 669 "quoteright", "quotesinglbase", "trademark", "fi", |
| 670 "fl", "Lslash", "OE", "Scaron", |
| 671 "Ydieresis", "Zcaron2", "dotlessi", "lslash", |
| 672 "oe", "scaron", "zcaron2", NULL, |
| 673 "Euro", "exclamdown", "cent", "sterling", |
| 674 "currency", "yen", "brokenbar", "section", |
| 675 "dieresis", "copyright", "ordfeminine", "guillemotleft4", |
| 676 "logicalnot", NULL, "registered", "macron", |
| 677 "degree", "plusminus", "twosuperior", "threesuperior", |
| 678 "acute", "mu", "paragraph", "periodcentered", |
| 679 "cedilla", "onesuperior", "ordmasculine", "guillemotright4", |
| 680 "onequarter", "onehalf", "threequarters", "questiondown", |
| 681 "Agrave", "Aacute", "Acircumflex", "Atilde", |
| 682 "Adieresis", "Aring", "AE", "Ccedilla", |
| 683 "Egrave", "Eacute", "Ecircumflex", "Edieresis", |
| 684 "Igrave", "Iacute", "Icircumflex", "Idieresis", |
| 685 "Eth", "Ntilde", "Ograve", "Oacute", |
| 686 "Ocircumflex", "Otilde", "Odieresis", "multiply", |
| 687 "Oslash", "Ugrave", "Uacute", "Ucircumflex", |
| 688 "Udieresis", "Yacute", "Thorn", "germandbls", |
| 689 "agrave", "aacute", "acircumflex", "atilde", |
| 690 "adieresis", "aring", "ae", "ccedilla", |
| 691 "egrave", "eacute", "ecircumflex", "edieresis", |
| 692 "igrave", "iacute", "icircumflex", "idieresis", |
| 693 "eth", "ntilde", "ograve", "oacute", |
| 694 "ocircumflex", "otilde", "odieresis", "divide", |
| 695 "oslash", "ugrave", "uacute", "ucircumflex", |
| 696 "udieresis", "yacute", "thorn", "ydieresis", |
| 697 }; |
| 698 const FX_LPCSTR AdobeSymbolEncodingNames[224] = { |
| 699 "space", "exclam", "universal", "numbersign", |
| 700 "existential", "percent", "ampersand", "suchthat", |
| 701 "parenleft", "parenright", "asteriskmath", "plus", |
| 702 "comma", "minus", "period", "slash", |
| 703 "zero", "one", "two", "three", |
| 704 "four", "five", "six", "seven", |
| 705 "eight", "nine", "colon", "semicolon", |
| 706 "less", "equal", "greater", "question", |
| 707 "congruent", "Alpha", "Beta", "Chi", |
| 708 "Delta", "Epsilon", "Phi", "Gamma", |
| 709 "Eta", "Iota", "theta1", "Kappa", |
| 710 "Lambda", "Mu", "Nu", "Omicron", |
| 711 "Pi", "Theta", "Rho", "Sigma", |
| 712 "Tau", "Upsilon", "sigma1", "Omega", |
| 713 "Xi", "Psi", "Zeta", "bracketleft", |
| 714 "therefore", "bracketright", "perpendicular", "underscore", |
| 715 "radicalex", "alpha", "beta", "chi", |
| 716 "delta", "epsilon", "phi", "gamma", |
| 717 "eta", "iota", "phi1", "kappa", |
| 718 "lambda", "mu", "nu", "omicron", |
| 719 "pi", "theta", "rho", "sigma", |
| 720 "tau", "upsilon", "omega1", "omega", |
| 721 "xi", "psi", "zeta", "braceleft", |
| 722 "bar", "braceright", "similar", NULL, |
| 723 NULL, NULL, NULL, NULL, |
| 724 NULL, NULL, NULL, NULL, |
| 725 NULL, NULL, NULL, NULL, |
| 726 NULL, NULL, NULL, NULL, |
| 727 NULL, NULL, NULL, NULL, |
| 728 NULL, NULL, NULL, NULL, |
| 729 NULL, NULL, NULL, NULL, |
| 730 NULL, NULL, NULL, NULL, |
| 731 "Euro", "Upsilon1", "minute", "lessequal", |
| 732 "fraction", "infinity", "florin", "club", |
| 733 "diamond", "heart", "spade", "arrowboth", |
| 734 "arrowleft", "arrowup", "arrowright", "arrowdown", |
| 735 "degree", "plusminus", "second", "greaterequal", |
| 736 "multiply", "proportional", "partialdiff", "bullet", |
| 737 "divide", "notequal", "equivalence", "approxequal", |
| 738 "ellipsis", "arrowvertex", "arrowhorizex", "carriagereturn", |
| 739 "aleph", "Ifraktur", "Rfraktur", "weierstrass", |
| 740 "circlemultiply", "circleplus", "emptyset", "intersection", |
| 741 "union", "propersuperset", "reflexsuperset", "notsubset", |
| 742 "propersubset", "reflexsubset", "element", "notelement", |
| 743 "angle", "gradient", "registerserif", "copyrightserif", |
| 744 "trademarkserif", "product", "radical", "dotmath", |
| 745 "logicalnot", "logicaland", "logicalor", "arrowdblboth", |
| 746 "arrowdblleft", "arrowdblup", "arrowdblright", "arrowdbldown", |
| 747 "lozenge", "angleleft", "registersans", "copyrightsans", |
| 748 "trademarksans", "summation", "parenlefttp", "parenleftex", |
| 749 "parenleftbt", "bracketlefttp", "bracketleftex", "bracketleftbt", |
| 750 "bracelefttp", "braceleftmid", "braceleftbt", "braceex", |
| 751 NULL, "angleright", "integral", "integraltp", |
| 752 "integralex", "integralbt", "parenrighttp", "parenrightex", |
| 753 "parenrightbt", "bracketrighttp", "bracketrightex", "bracketrightbt", |
| 754 "bracerighttp", "bracerightmid", "bracerightbt", NULL, |
| 755 }; |
| 756 const FX_LPCSTR ZapfEncodingNames[224] = { |
| 757 "space", "a1", "a2", "a202", "a3", "a4", "a5", "a119", "a118", |
| 758 "a117", "a11", "a12", "a13", "a14", "a15", "a16", "a105", "a17", |
| 759 "a18", "a19", "a20", "a21", "a22", "a23", "a24", "a25", "a26", |
| 760 "a27", "a28", "a6", "a7", "a8", "a9", "a10", "a29", "a30", |
| 761 "a31", "a32", "a33", "a34", "a35", "a36", "a37", "a38", "a39", |
| 762 "a40", "a41", "a42", "a43", "a44", "a45", "a46", "a47", "a48", |
| 763 "a49", "a50", "a51", "a52", "a53", "a54", "a55", "a56", "a57", |
| 764 "a58", "a59", "a60", "a61", "a62", "a63", "a64", "a65", "a66", |
| 765 "a67", "a68", "a69", "a70", "a71", "a72", "a73", "a74", "a203", |
| 766 "a75", "a204", "a76", "a77", "a78", "a79", "a81", "a82", "a83", |
| 767 "a84", "a97", "a98", "a99", "a100", NULL, "a89", "a90", "a93", |
| 768 "a94", "a91", "a92", "a205", "a85", "a206", "a86", "a87", "a88", |
| 769 "a95", "a96", NULL, NULL, NULL, NULL, NULL, NULL, NULL, |
| 770 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, |
| 771 NULL, NULL, NULL, "a101", "a102", "a103", "a104", "a106", "a107", |
| 772 "a108", "a112", "a111", "a110", "a109", "a120", "a121", "a122", "a123", |
| 773 "a124", "a125", "a126", "a127", "a128", "a129", "a130", "a131", "a132", |
| 774 "a133", "a134", "a135", "a136", "a137", "a138", "a139", "a140", "a141", |
| 775 "a142", "a143", "a144", "a145", "a146", "a147", "a148", "a149", "a150", |
| 776 "a151", "a152", "a153", "a154", "a155", "a156", "a157", "a158", "a159", |
| 777 "a160", "a161", "a163", "a164", "a196", "a165", "a192", "a166", "a167", |
| 778 "a168", "a169", "a170", "a171", "a172", "a173", "a162", "a174", "a175", |
| 779 "a176", "a177", "a178", "a179", "a193", "a180", "a199", "a181", "a200", |
| 780 "a182", NULL, "a201", "a183", "a184", "a197", "a185", "a194", "a198", |
| 781 "a186", "a195", "a187", "a188", "a189", "a190", "a191", NULL |
| 782 }; |
| 783 const FX_CHAR* PDF_CharNameFromPredefinedCharSet(int encoding, |
| 784 FX_BYTE charcode) { |
| 785 if (encoding == PDFFONT_ENCODING_PDFDOC) { |
| 786 if (charcode < 24) { |
| 787 return NULL; |
490 } | 788 } |
491 switch (encoding) { | 789 charcode -= 24; |
492 case PDFFONT_ENCODING_WINANSI: | 790 } else { |
493 return AdobeWinAnsiEncodingNames[charcode]; | 791 if (charcode < 32) { |
494 case PDFFONT_ENCODING_MACROMAN: | 792 return NULL; |
495 return MacRomanEncodingNames[charcode]; | |
496 case PDFFONT_ENCODING_MACEXPERT: | |
497 return MacExpertEncodingNames[charcode]; | |
498 case PDFFONT_ENCODING_STANDARD: | |
499 return StandardEncodingNames[charcode]; | |
500 case PDFFONT_ENCODING_ADOBE_SYMBOL: | |
501 return AdobeSymbolEncodingNames[charcode]; | |
502 case PDFFONT_ENCODING_ZAPFDINGBATS: | |
503 return ZapfEncodingNames[charcode]; | |
504 case PDFFONT_ENCODING_PDFDOC: | |
505 return PDFDocEncodingNames[charcode]; | |
506 } | 793 } |
507 return NULL; | 794 charcode -= 32; |
| 795 } |
| 796 switch (encoding) { |
| 797 case PDFFONT_ENCODING_WINANSI: |
| 798 return AdobeWinAnsiEncodingNames[charcode]; |
| 799 case PDFFONT_ENCODING_MACROMAN: |
| 800 return MacRomanEncodingNames[charcode]; |
| 801 case PDFFONT_ENCODING_MACEXPERT: |
| 802 return MacExpertEncodingNames[charcode]; |
| 803 case PDFFONT_ENCODING_STANDARD: |
| 804 return StandardEncodingNames[charcode]; |
| 805 case PDFFONT_ENCODING_ADOBE_SYMBOL: |
| 806 return AdobeSymbolEncodingNames[charcode]; |
| 807 case PDFFONT_ENCODING_ZAPFDINGBATS: |
| 808 return ZapfEncodingNames[charcode]; |
| 809 case PDFFONT_ENCODING_PDFDOC: |
| 810 return PDFDocEncodingNames[charcode]; |
| 811 } |
| 812 return NULL; |
508 } | 813 } |
509 FX_WCHAR FT_UnicodeFromCharCode(int encoding, FX_DWORD charcode) | 814 FX_WCHAR FT_UnicodeFromCharCode(int encoding, FX_DWORD charcode) { |
510 { | 815 switch (encoding) { |
511 switch (encoding) { | 816 case FXFT_ENCODING_UNICODE: |
512 case FXFT_ENCODING_UNICODE: | 817 return (FX_WORD)charcode; |
513 return (FX_WORD)charcode; | 818 case FXFT_ENCODING_ADOBE_STANDARD: |
514 case FXFT_ENCODING_ADOBE_STANDARD: | 819 return StandardEncoding[(FX_BYTE)charcode]; |
515 return StandardEncoding[(FX_BYTE)charcode]; | 820 case FXFT_ENCODING_ADOBE_EXPERT: |
516 case FXFT_ENCODING_ADOBE_EXPERT: | 821 return MacExpertEncoding[(FX_BYTE)charcode]; |
517 return MacExpertEncoding[(FX_BYTE)charcode]; | 822 case FXFT_ENCODING_ADOBE_LATIN_1: |
518 case FXFT_ENCODING_ADOBE_LATIN_1: | 823 return AdobeWinAnsiEncoding[(FX_BYTE)charcode]; |
519 return AdobeWinAnsiEncoding[(FX_BYTE)charcode]; | 824 case FXFT_ENCODING_APPLE_ROMAN: |
520 case FXFT_ENCODING_APPLE_ROMAN: | 825 return MacRomanEncoding[(FX_BYTE)charcode]; |
521 return MacRomanEncoding[(FX_BYTE)charcode]; | 826 case PDFFONT_ENCODING_PDFDOC: |
522 case PDFFONT_ENCODING_PDFDOC: | 827 return PDFDocEncoding[(FX_BYTE)charcode]; |
523 return PDFDocEncoding[(FX_BYTE)charcode]; | 828 } |
| 829 return 0; |
| 830 } |
| 831 static FX_DWORD PDF_FindCode(const FX_WORD* pCodes, FX_WORD unicode) { |
| 832 for (FX_DWORD i = 0; i < 256; i++) |
| 833 if (pCodes[i] == unicode) { |
| 834 return i; |
524 } | 835 } |
525 return 0; | 836 return 0; |
526 } | |
527 static FX_DWORD PDF_FindCode(const FX_WORD* pCodes, FX_WORD unicode) | |
528 { | |
529 for (FX_DWORD i = 0; i < 256; i ++) | |
530 if (pCodes[i] == unicode) { | |
531 return i; | |
532 } | |
533 return 0; | |
534 } | 837 } |
535 const FX_WORD MSSymbolEncoding[256] = { | 838 const FX_WORD MSSymbolEncoding[256] = { |
536 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 839 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
537 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 840 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
538 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 841 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
539 0x0000, 0x0000, 32, 33, 8704, 35, 8707, 37, 38, 8715, | 842 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 32, 33, 8704, 35, |
540 40, 41, 8727, 43, 44, 8722, 46, 47, 48, 49, | 843 8707, 37, 38, 8715, 40, 41, 8727, 43, 44, |
541 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, | 844 8722, 46, 47, 48, 49, 50, 51, 52, 53, |
542 60, 61, 62, 63, 8773, 913, 914, 935, 916, 917, | 845 54, 55, 56, 57, 58, 59, 60, 61, 62, |
543 934, 915, 919, 921, 977, 922, 923, 924, 925, 927, | 846 63, 8773, 913, 914, 935, 916, 917, 934, 915, |
544 928, 920, 929, 931, 932, 933, 962, 937, 926, 936, | 847 919, 921, 977, 922, 923, 924, 925, 927, 928, |
545 918, 91, 8756, 93, 8869, 95, 8254, 945, 946, 967, | 848 920, 929, 931, 932, 933, 962, 937, 926, 936, |
546 948, 949, 966, 947, 951, 953, 981, 954, 955, 956, | 849 918, 91, 8756, 93, 8869, 95, 8254, 945, 946, |
547 957, 959, 960, 952, 961, 963, 964, 965, 982, 969, | 850 967, 948, 949, 966, 947, 951, 953, 981, 954, |
548 958, 968, 950, 123, 124, 125, 8764, 0, 0, 0, | 851 955, 956, 957, 959, 960, 952, 961, 963, 964, |
549 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 852 965, 982, 969, 958, 968, 950, 123, 124, 125, |
550 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 853 8764, 0, 0, 0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
551 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00
00, | 854 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
552 0x0000, 978, 8242, 8804, 8725, 8734, 402, 9827, 9830, 9828, | 855 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, |
553 9824, 8596, 8592, 8593, 8594, 8595, 176, 177, 8243, 8805, | 856 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 978, |
554 215, 8733, 8706, 8729, 247, 8800, 8801, 8776, 8943, 0, | 857 8242, 8804, 8725, 8734, 402, 9827, 9830, 9828, 9824, |
555 0, 8629, 0, 8465, 8476, 8472, 8855, 8853, 8709, 8745, | 858 8596, 8592, 8593, 8594, 8595, 176, 177, 8243, 8805, |
556 8746, 8835, 8839, 8836, 8834, 8838, 8712, 8713, 8736, 8711, | 859 215, 8733, 8706, 8729, 247, 8800, 8801, 8776, 8943, |
557 174, 169, 8482, 8719, 8730, 8901, 172, 8743, 8744, 8660, | 860 0, 0, 8629, 0, 8465, 8476, 8472, 8855, 8853, |
558 8656, 8657, 8658, 8659, 9674, 9001, 0, 0, 0, 8721, | 861 8709, 8745, 8746, 8835, 8839, 8836, 8834, 8838, 8712, |
559 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | 862 8713, 8736, 8711, 174, 169, 8482, 8719, 8730, 8901, |
560 0x0000, 9002, 8747, 8992, 0, 8993, 0, 0, 0, 0, | 863 172, 8743, 8744, 8660, 8656, 8657, 8658, 8659, 9674, |
561 0, 0, 0x0000, 0x0000, 0x0000, 0x0000 | 864 9001, 0, 0, 0, 8721, 0, 0, 0, 0, |
562 }; | 865 0, 0, 0, 0, 0, 0, 0x0000, 9002, 8747, |
563 FX_DWORD FT_CharCodeFromUnicode(int encoding, FX_WCHAR unicode) | 866 8992, 0, 8993, 0, 0, 0, 0, 0, 0, |
564 { | 867 0x0000, 0x0000, 0x0000, 0x0000 |
565 switch (encoding) { | 868 }; |
566 case FXFT_ENCODING_UNICODE: | 869 FX_DWORD FT_CharCodeFromUnicode(int encoding, FX_WCHAR unicode) { |
567 return unicode; | 870 switch (encoding) { |
568 case FXFT_ENCODING_ADOBE_STANDARD: | 871 case FXFT_ENCODING_UNICODE: |
569 return PDF_FindCode(StandardEncoding, unicode); | 872 return unicode; |
570 case FXFT_ENCODING_ADOBE_EXPERT: | 873 case FXFT_ENCODING_ADOBE_STANDARD: |
571 return PDF_FindCode(MacExpertEncoding, unicode); | 874 return PDF_FindCode(StandardEncoding, unicode); |
572 case FXFT_ENCODING_ADOBE_LATIN_1: | 875 case FXFT_ENCODING_ADOBE_EXPERT: |
573 return PDF_FindCode(AdobeWinAnsiEncoding, unicode); | 876 return PDF_FindCode(MacExpertEncoding, unicode); |
574 case FXFT_ENCODING_APPLE_ROMAN: | 877 case FXFT_ENCODING_ADOBE_LATIN_1: |
575 return PDF_FindCode(MacRomanEncoding, unicode); | 878 return PDF_FindCode(AdobeWinAnsiEncoding, unicode); |
576 case FXFT_ENCODING_ADOBE_CUSTOM: | 879 case FXFT_ENCODING_APPLE_ROMAN: |
577 return PDF_FindCode(PDFDocEncoding, unicode); | 880 return PDF_FindCode(MacRomanEncoding, unicode); |
578 case FXFT_ENCODING_MS_SYMBOL: | 881 case FXFT_ENCODING_ADOBE_CUSTOM: |
579 return PDF_FindCode(MSSymbolEncoding, unicode); | 882 return PDF_FindCode(PDFDocEncoding, unicode); |
580 } | 883 case FXFT_ENCODING_MS_SYMBOL: |
581 return 0; | 884 return PDF_FindCode(MSSymbolEncoding, unicode); |
| 885 } |
| 886 return 0; |
582 } | 887 } |
583 const FX_WORD* PDF_UnicodesForPredefinedCharSet(int encoding) | 888 const FX_WORD* PDF_UnicodesForPredefinedCharSet(int encoding) { |
584 { | 889 switch (encoding) { |
585 switch (encoding) { | 890 case PDFFONT_ENCODING_WINANSI: |
586 case PDFFONT_ENCODING_WINANSI: | 891 return AdobeWinAnsiEncoding; |
587 return AdobeWinAnsiEncoding; | 892 case PDFFONT_ENCODING_MACROMAN: |
588 case PDFFONT_ENCODING_MACROMAN: | 893 return MacRomanEncoding; |
589 return MacRomanEncoding; | 894 case PDFFONT_ENCODING_MACEXPERT: |
590 case PDFFONT_ENCODING_MACEXPERT: | 895 return MacExpertEncoding; |
591 return MacExpertEncoding; | 896 case PDFFONT_ENCODING_STANDARD: |
592 case PDFFONT_ENCODING_STANDARD: | 897 return StandardEncoding; |
593 return StandardEncoding; | 898 case PDFFONT_ENCODING_ADOBE_SYMBOL: |
594 case PDFFONT_ENCODING_ADOBE_SYMBOL: | 899 return AdobeSymbolEncoding; |
595 return AdobeSymbolEncoding; | 900 case PDFFONT_ENCODING_ZAPFDINGBATS: |
596 case PDFFONT_ENCODING_ZAPFDINGBATS: | 901 return ZapfEncoding; |
597 return ZapfEncoding; | 902 case PDFFONT_ENCODING_PDFDOC: |
598 case PDFFONT_ENCODING_PDFDOC: | 903 return PDFDocEncoding; |
599 return PDFDocEncoding; | 904 case PDFFONT_ENCODING_MS_SYMBOL: |
600 case PDFFONT_ENCODING_MS_SYMBOL: | 905 return MSSymbolEncoding; |
601 return MSSymbolEncoding; | 906 } |
602 } | 907 return NULL; |
603 return NULL; | |
604 } | 908 } |
605 FX_DWORD PDF_PredefinedCharCodeFromUnicode(int encoding, FX_WCHAR unicode) | 909 FX_DWORD PDF_PredefinedCharCodeFromUnicode(int encoding, FX_WCHAR unicode) { |
606 { | 910 return PDF_FindCode(PDF_UnicodesForPredefinedCharSet(encoding), unicode); |
607 return PDF_FindCode(PDF_UnicodesForPredefinedCharSet(encoding), unicode); | |
608 } | 911 } |
609 #ifdef __cplusplus | 912 #ifdef __cplusplus |
610 extern "C" { | 913 extern "C" { |
611 #endif | 914 #endif |
612 extern int FXFT_unicode_from_adobe_name(const char* name); | 915 extern int FXFT_unicode_from_adobe_name(const char* name); |
613 #ifdef __cplusplus | 916 #ifdef __cplusplus |
614 } | 917 } |
615 #endif | 918 #endif |
616 FX_WCHAR PDF_UnicodeFromAdobeName(const FX_CHAR* name) | 919 FX_WCHAR PDF_UnicodeFromAdobeName(const FX_CHAR* name) { |
617 { | 920 return (FX_WCHAR)(FXFT_unicode_from_adobe_name(name) & 0x7FFFFFFF); |
618 return (FX_WCHAR)(FXFT_unicode_from_adobe_name(name) & 0x7FFFFFFF); | |
619 } | 921 } |
620 CFX_ByteString PDF_AdobeNameFromUnicode(FX_WCHAR unicode) | 922 CFX_ByteString PDF_AdobeNameFromUnicode(FX_WCHAR unicode) { |
621 { | 923 char glyph_name[64]; |
622 char glyph_name[64]; | 924 FXFT_adobe_name_from_unicode(glyph_name, unicode); |
623 FXFT_adobe_name_from_unicode(glyph_name, unicode); | 925 return CFX_ByteString(glyph_name, -1); |
624 return CFX_ByteString(glyph_name, -1); | |
625 } | 926 } |
OLD | NEW |