00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef __PLUNICODE_TYPE1_H__
00028 #define __PLUNICODE_TYPE1_H__
00029
00030 typedef struct
00031 {
00032 PLUNICODE Unicode;
00033 unsigned char Type1;
00034 } Unicode_to_Type1_table;
00035
00036
00037
00038
00039 static const int number_of_entries_in_unicode_to_dingbats_table = 203;
00040
00041 static const Unicode_to_Type1_table unicode_to_dingbats_lookup_table[203] = {
00042 { 0x0020, 32 },
00043 { 0x00a0, 32 },
00044 { 0x2192, 213 },
00045 { 0x2194, 214 },
00046 { 0x2195, 215 },
00047 { 0x2460, 172 },
00048 { 0x2461, 173 },
00049 { 0x2462, 174 },
00050 { 0x2463, 175 },
00051 { 0x2464, 176 },
00052 { 0x2465, 177 },
00053 { 0x2466, 178 },
00054 { 0x2467, 179 },
00055 { 0x2468, 180 },
00056 { 0x2469, 181 },
00057 { 0x25a0, 110 },
00058 { 0x25b2, 115 },
00059 { 0x25bc, 116 },
00060 { 0x25c6, 117 },
00061 { 0x25cf, 108 },
00062 { 0x25d7, 119 },
00063 { 0x2605, 72 },
00064 { 0x260e, 37 },
00065 { 0x261b, 42 },
00066 { 0x261e, 43 },
00067 { 0x2660, 171 },
00068 { 0x2663, 168 },
00069 { 0x2665, 170 },
00070 { 0x2666, 169 },
00071 { 0x2701, 33 },
00072 { 0x2702, 34 },
00073 { 0x2703, 35 },
00074 { 0x2704, 36 },
00075 { 0x2706, 38 },
00076 { 0x2707, 39 },
00077 { 0x2708, 40 },
00078 { 0x2709, 41 },
00079 { 0x270c, 44 },
00080 { 0x270d, 45 },
00081 { 0x270e, 46 },
00082 { 0x270f, 47 },
00083 { 0x2710, 48 },
00084 { 0x2711, 49 },
00085 { 0x2712, 50 },
00086 { 0x2713, 51 },
00087 { 0x2714, 52 },
00088 { 0x2715, 53 },
00089 { 0x2716, 54 },
00090 { 0x2717, 55 },
00091 { 0x2718, 56 },
00092 { 0x2719, 57 },
00093 { 0x271a, 58 },
00094 { 0x271b, 59 },
00095 { 0x271c, 60 },
00096 { 0x271d, 61 },
00097 { 0x271e, 62 },
00098 { 0x271f, 63 },
00099 { 0x2720, 64 },
00100 { 0x2721, 65 },
00101 { 0x2722, 66 },
00102 { 0x2723, 67 },
00103 { 0x2724, 68 },
00104 { 0x2725, 69 },
00105 { 0x2726, 70 },
00106 { 0x2727, 71 },
00107 { 0x2729, 73 },
00108 { 0x272a, 74 },
00109 { 0x272b, 75 },
00110 { 0x272c, 76 },
00111 { 0x272d, 77 },
00112 { 0x272e, 78 },
00113 { 0x272f, 79 },
00114 { 0x2730, 80 },
00115 { 0x2731, 81 },
00116 { 0x2732, 82 },
00117 { 0x2733, 83 },
00118 { 0x2734, 84 },
00119 { 0x2735, 85 },
00120 { 0x2736, 86 },
00121 { 0x2737, 87 },
00122 { 0x2738, 88 },
00123 { 0x2739, 89 },
00124 { 0x273a, 90 },
00125 { 0x273b, 91 },
00126 { 0x273c, 92 },
00127 { 0x273d, 93 },
00128 { 0x273e, 94 },
00129 { 0x273f, 95 },
00130 { 0x2740, 96 },
00131 { 0x2741, 97 },
00132 { 0x2742, 98 },
00133 { 0x2743, 99 },
00134 { 0x2744, 100 },
00135 { 0x2745, 101 },
00136 { 0x2746, 102 },
00137 { 0x2747, 103 },
00138 { 0x2748, 104 },
00139 { 0x2749, 105 },
00140 { 0x274a, 106 },
00141 { 0x274b, 107 },
00142 { 0x274d, 109 },
00143 { 0x274f, 111 },
00144 { 0x2750, 112 },
00145 { 0x2751, 113 },
00146 { 0x2752, 114 },
00147 { 0x2756, 118 },
00148 { 0x2758, 120 },
00149 { 0x2759, 121 },
00150 { 0x275a, 122 },
00151 { 0x275b, 123 },
00152 { 0x275c, 124 },
00153 { 0x275d, 125 },
00154 { 0x275e, 126 },
00155 { 0x2761, 161 },
00156 { 0x2762, 162 },
00157 { 0x2763, 163 },
00158 { 0x2764, 164 },
00159 { 0x2765, 165 },
00160 { 0x2766, 166 },
00161 { 0x2767, 167 },
00162 { 0x2776, 182 },
00163 { 0x2777, 183 },
00164 { 0x2778, 184 },
00165 { 0x2779, 185 },
00166 { 0x277a, 186 },
00167 { 0x277b, 187 },
00168 { 0x277c, 188 },
00169 { 0x277d, 189 },
00170 { 0x277e, 190 },
00171 { 0x277f, 191 },
00172 { 0x2780, 192 },
00173 { 0x2781, 193 },
00174 { 0x2782, 194 },
00175 { 0x2783, 195 },
00176 { 0x2784, 196 },
00177 { 0x2785, 197 },
00178 { 0x2786, 198 },
00179 { 0x2787, 199 },
00180 { 0x2788, 200 },
00181 { 0x2789, 201 },
00182 { 0x278a, 202 },
00183 { 0x278b, 203 },
00184 { 0x278c, 204 },
00185 { 0x278d, 205 },
00186 { 0x278e, 206 },
00187 { 0x278f, 207 },
00188 { 0x2790, 208 },
00189 { 0x2791, 209 },
00190 { 0x2792, 210 },
00191 { 0x2793, 211 },
00192 { 0x2794, 212 },
00193 { 0x2798, 216 },
00194 { 0x2799, 217 },
00195 { 0x279a, 218 },
00196 { 0x279b, 219 },
00197 { 0x279c, 220 },
00198 { 0x279d, 221 },
00199 { 0x279e, 222 },
00200 { 0x279f, 223 },
00201 { 0x27a0, 224 },
00202 { 0x27a1, 225 },
00203 { 0x27a2, 226 },
00204 { 0x27a3, 227 },
00205 { 0x27a4, 228 },
00206 { 0x27a5, 229 },
00207 { 0x27a6, 230 },
00208 { 0x27a7, 231 },
00209 { 0x27a8, 232 },
00210 { 0x27a9, 233 },
00211 { 0x27aa, 234 },
00212 { 0x27ab, 235 },
00213 { 0x27ac, 236 },
00214 { 0x27ad, 237 },
00215 { 0x27ae, 238 },
00216 { 0x27af, 239 },
00217 { 0x27b1, 241 },
00218 { 0x27b2, 242 },
00219 { 0x27b3, 243 },
00220 { 0x27b4, 244 },
00221 { 0x27b5, 245 },
00222 { 0x27b6, 246 },
00223 { 0x27b7, 247 },
00224 { 0x27b8, 248 },
00225 { 0x27b9, 249 },
00226 { 0x27ba, 250 },
00227 { 0x27bb, 251 },
00228 { 0x27bc, 252 },
00229 { 0x27bd, 253 },
00230 { 0x27be, 254 },
00231 { 0xf8d7, 128 },
00232 { 0xf8d8, 129 },
00233 { 0xf8d9, 130 },
00234 { 0xf8da, 131 },
00235 { 0xf8db, 132 },
00236 { 0xf8dc, 133 },
00237 { 0xf8dd, 134 },
00238 { 0xf8de, 135 },
00239 { 0xf8df, 136 },
00240 { 0xf8e0, 137 },
00241 { 0xf8e1, 138 },
00242 { 0xf8e2, 139 },
00243 { 0xf8e3, 140 },
00244 { 0xf8e4, 141 },
00245 };
00246
00247 static const int number_of_entries_in_unicode_to_standard_table = 154;
00248
00249 static const Unicode_to_Type1_table unicode_to_standard_lookup_table[154] = {
00250 { 0x0020, 32 },
00251 { 0x0021, 33 },
00252 { 0x0022, 34 },
00253 { 0x0023, 35 },
00254 { 0x0024, 36 },
00255 { 0x0025, 37 },
00256 { 0x0026, 38 },
00257 { 0x0027, 169 },
00258 { 0x0028, 40 },
00259 { 0x0029, 41 },
00260 { 0x002a, 42 },
00261 { 0x002b, 43 },
00262 { 0x002c, 44 },
00263 { 0x002d, 45 },
00264 { 0x002e, 46 },
00265 { 0x002f, 47 },
00266 { 0x0030, 48 },
00267 { 0x0031, 49 },
00268 { 0x0032, 50 },
00269 { 0x0033, 51 },
00270 { 0x0034, 52 },
00271 { 0x0035, 53 },
00272 { 0x0036, 54 },
00273 { 0x0037, 55 },
00274 { 0x0038, 56 },
00275 { 0x0039, 57 },
00276 { 0x003a, 58 },
00277 { 0x003b, 59 },
00278 { 0x003c, 60 },
00279 { 0x003d, 61 },
00280 { 0x003e, 62 },
00281 { 0x003f, 63 },
00282 { 0x0040, 64 },
00283 { 0x0041, 65 },
00284 { 0x0042, 66 },
00285 { 0x0043, 67 },
00286 { 0x0044, 68 },
00287 { 0x0045, 69 },
00288 { 0x0046, 70 },
00289 { 0x0047, 71 },
00290 { 0x0048, 72 },
00291 { 0x0049, 73 },
00292 { 0x004a, 74 },
00293 { 0x004b, 75 },
00294 { 0x004c, 76 },
00295 { 0x004d, 77 },
00296 { 0x004e, 78 },
00297 { 0x004f, 79 },
00298 { 0x0050, 80 },
00299 { 0x0051, 81 },
00300 { 0x0052, 82 },
00301 { 0x0053, 83 },
00302 { 0x0054, 84 },
00303 { 0x0055, 85 },
00304 { 0x0056, 86 },
00305 { 0x0057, 87 },
00306 { 0x0058, 88 },
00307 { 0x0059, 89 },
00308 { 0x005a, 90 },
00309 { 0x005b, 91 },
00310 { 0x005c, 92 },
00311 { 0x005d, 93 },
00312 { 0x005e, 94 },
00313 { 0x005f, 95 },
00314 { 0x0060, 193 },
00315 { 0x0061, 97 },
00316 { 0x0062, 98 },
00317 { 0x0063, 99 },
00318 { 0x0064, 100 },
00319 { 0x0065, 101 },
00320 { 0x0066, 102 },
00321 { 0x0067, 103 },
00322 { 0x0068, 104 },
00323 { 0x0069, 105 },
00324 { 0x006a, 106 },
00325 { 0x006b, 107 },
00326 { 0x006c, 108 },
00327 { 0x006d, 109 },
00328 { 0x006e, 110 },
00329 { 0x006f, 111 },
00330 { 0x0070, 112 },
00331 { 0x0071, 113 },
00332 { 0x0072, 114 },
00333 { 0x0073, 115 },
00334 { 0x0074, 116 },
00335 { 0x0075, 117 },
00336 { 0x0076, 118 },
00337 { 0x0077, 119 },
00338 { 0x0078, 120 },
00339 { 0x0079, 121 },
00340 { 0x007a, 122 },
00341 { 0x007b, 123 },
00342 { 0x007c, 124 },
00343 { 0x007d, 125 },
00344 { 0x007e, 126 },
00345 { 0x00a0, 32 },
00346 { 0x00a1, 161 },
00347 { 0x00a2, 162 },
00348 { 0x00a3, 163 },
00349 { 0x00a4, 168 },
00350 { 0x00a5, 165 },
00351 { 0x00a7, 167 },
00352 { 0x00a8, 200 },
00353 { 0x00aa, 227 },
00354 { 0x00ab, 171 },
00355 { 0x00ad, 45 },
00356 { 0x00af, 197 },
00357 { 0x00b4, 194 },
00358 { 0x00b6, 182 },
00359 { 0x00b7, 180 },
00360 { 0x00b8, 203 },
00361 { 0x00ba, 235 },
00362 { 0x00bb, 187 },
00363 { 0x00bf, 191 },
00364 { 0x00c6, 225 },
00365 { 0x00d8, 233 },
00366 { 0x00df, 251 },
00367 { 0x00e6, 241 },
00368 { 0x00f8, 249 },
00369 { 0x0131, 245 },
00370 { 0x0141, 232 },
00371 { 0x0142, 248 },
00372 { 0x0152, 234 },
00373 { 0x0153, 250 },
00374 { 0x0192, 166 },
00375 { 0x02c6, 195 },
00376 { 0x02c7, 207 },
00377 { 0x02c9, 197 },
00378 { 0x02d8, 198 },
00379 { 0x02d9, 199 },
00380 { 0x02da, 202 },
00381 { 0x02db, 206 },
00382 { 0x02dc, 196 },
00383 { 0x02dd, 205 },
00384 { 0x2013, 177 },
00385 { 0x2014, 208 },
00386 { 0x2018, 96 },
00387 { 0x2019, 39 },
00388 { 0x201a, 184 },
00389 { 0x201c, 170 },
00390 { 0x201d, 186 },
00391 { 0x201e, 185 },
00392 { 0x2020, 178 },
00393 { 0x2021, 179 },
00394 { 0x2022, 183 },
00395 { 0x2026, 188 },
00396 { 0x2030, 189 },
00397 { 0x2039, 172 },
00398 { 0x203a, 173 },
00399 { 0x2044, 164 },
00400 { 0x2215, 164 },
00401 { 0x2219, 180 },
00402 { 0xfb01, 174 },
00403 { 0xfb02, 175 },
00404 };
00405
00406 static const int number_of_entries_in_unicode_to_symbol_table = 194;
00407
00408 static const Unicode_to_Type1_table unicode_to_symbol_lookup_table[194] = {
00409 { 0x0020, 32 },
00410 { 0x0021, 33 },
00411 { 0x0023, 35 },
00412 { 0x0025, 37 },
00413 { 0x0026, 38 },
00414 { 0x0028, 40 },
00415 { 0x0029, 41 },
00416 { 0x002b, 43 },
00417 { 0x002c, 44 },
00418 { 0x002e, 46 },
00419 { 0x002f, 47 },
00420 { 0x0030, 48 },
00421 { 0x0031, 49 },
00422 { 0x0032, 50 },
00423 { 0x0033, 51 },
00424 { 0x0034, 52 },
00425 { 0x0035, 53 },
00426 { 0x0036, 54 },
00427 { 0x0037, 55 },
00428 { 0x0038, 56 },
00429 { 0x0039, 57 },
00430 { 0x003a, 58 },
00431 { 0x003b, 59 },
00432 { 0x003c, 60 },
00433 { 0x003d, 61 },
00434 { 0x003e, 62 },
00435 { 0x003f, 63 },
00436 { 0x005b, 91 },
00437 { 0x005d, 93 },
00438 { 0x005f, 95 },
00439 { 0x007b, 123 },
00440 { 0x007c, 124 },
00441 { 0x007d, 125 },
00442 { 0x00a0, 32 },
00443 { 0x00ac, 216 },
00444 { 0x00b0, 176 },
00445 { 0x00b1, 177 },
00446 { 0x00b5, 109 },
00447 { 0x00d7, 180 },
00448 { 0x00f7, 184 },
00449 { 0x0192, 166 },
00450 { 0x0391, 65 },
00451 { 0x0392, 66 },
00452 { 0x0393, 71 },
00453 { 0x0394, 68 },
00454 { 0x0395, 69 },
00455 { 0x0396, 90 },
00456 { 0x0397, 72 },
00457 { 0x0398, 81 },
00458 { 0x0399, 73 },
00459 { 0x039a, 75 },
00460 { 0x039b, 76 },
00461 { 0x039c, 77 },
00462 { 0x039d, 78 },
00463 { 0x039e, 88 },
00464 { 0x039f, 79 },
00465 { 0x03a0, 80 },
00466 { 0x03a1, 82 },
00467 { 0x03a3, 83 },
00468 { 0x03a4, 84 },
00469 { 0x03a5, 85 },
00470 { 0x03a6, 70 },
00471 { 0x03a7, 67 },
00472 { 0x03a8, 89 },
00473 { 0x03a9, 87 },
00474 { 0x03b1, 97 },
00475 { 0x03b2, 98 },
00476 { 0x03b3, 103 },
00477 { 0x03b4, 100 },
00478 { 0x03b5, 101 },
00479 { 0x03b6, 122 },
00480 { 0x03b7, 104 },
00481 { 0x03b8, 113 },
00482 { 0x03b9, 105 },
00483 { 0x03ba, 107 },
00484 { 0x03bb, 108 },
00485 { 0x03bc, 109 },
00486 { 0x03bd, 110 },
00487 { 0x03be, 120 },
00488 { 0x03bf, 111 },
00489 { 0x03c0, 112 },
00490 { 0x03c1, 114 },
00491 { 0x03c2, 86 },
00492 { 0x03c3, 115 },
00493 { 0x03c4, 116 },
00494 { 0x03c5, 117 },
00495 { 0x03c6, 102 },
00496 { 0x03c7, 99 },
00497 { 0x03c8, 121 },
00498 { 0x03c9, 119 },
00499 { 0x03d1, 74 },
00500 { 0x03d2, 161 },
00501 { 0x03d5, 106 },
00502 { 0x03d6, 118 },
00503 { 0x2022, 183 },
00504 { 0x2026, 188 },
00505 { 0x2032, 162 },
00506 { 0x2033, 178 },
00507 { 0x2044, 164 },
00508 { 0x20ac, 160 },
00509 { 0x2111, 193 },
00510 { 0x2118, 195 },
00511 { 0x211c, 194 },
00512 { 0x2126, 87 },
00513 { 0x2135, 192 },
00514 { 0x2190, 172 },
00515 { 0x2191, 173 },
00516 { 0x2192, 174 },
00517 { 0x2193, 175 },
00518 { 0x2194, 171 },
00519 { 0x21b5, 191 },
00520 { 0x21d0, 220 },
00521 { 0x21d1, 221 },
00522 { 0x21d2, 222 },
00523 { 0x21d3, 223 },
00524 { 0x21d4, 219 },
00525 { 0x2200, 34 },
00526 { 0x2202, 182 },
00527 { 0x2203, 36 },
00528 { 0x2205, 198 },
00529 { 0x2206, 68 },
00530 { 0x2207, 209 },
00531 { 0x2208, 206 },
00532 { 0x2209, 207 },
00533 { 0x220b, 39 },
00534 { 0x220f, 213 },
00535 { 0x2211, 229 },
00536 { 0x2212, 45 },
00537 { 0x2215, 164 },
00538 { 0x2217, 42 },
00539 { 0x221a, 214 },
00540 { 0x221d, 181 },
00541 { 0x221e, 165 },
00542 { 0x2220, 208 },
00543 { 0x2227, 217 },
00544 { 0x2228, 218 },
00545 { 0x2229, 199 },
00546 { 0x222a, 200 },
00547 { 0x222b, 242 },
00548 { 0x2234, 92 },
00549 { 0x223c, 126 },
00550 { 0x2245, 64 },
00551 { 0x2248, 187 },
00552 { 0x2260, 185 },
00553 { 0x2261, 186 },
00554 { 0x2264, 163 },
00555 { 0x2265, 179 },
00556 { 0x2282, 204 },
00557 { 0x2283, 201 },
00558 { 0x2284, 203 },
00559 { 0x2286, 205 },
00560 { 0x2287, 202 },
00561 { 0x2295, 197 },
00562 { 0x2297, 196 },
00563 { 0x22a5, 94 },
00564 { 0x22c5, 215 },
00565 { 0x2320, 243 },
00566 { 0x2321, 245 },
00567 { 0x2329, 225 },
00568 { 0x232a, 241 },
00569 { 0x25ca, 224 },
00570 { 0x2660, 170 },
00571 { 0x2663, 167 },
00572 { 0x2665, 169 },
00573 { 0x2666, 168 },
00574 { 0xf6d9, 211 },
00575 { 0xf6da, 210 },
00576 { 0xf6db, 212 },
00577 { 0xf8e5, 96 },
00578 { 0xf8e6, 189 },
00579 { 0xf8e7, 190 },
00580 { 0xf8e8, 226 },
00581 { 0xf8e9, 227 },
00582 { 0xf8ea, 228 },
00583 { 0xf8eb, 230 },
00584 { 0xf8ec, 231 },
00585 { 0xf8ed, 232 },
00586 { 0xf8ee, 233 },
00587 { 0xf8ef, 234 },
00588 { 0xf8f0, 235 },
00589 { 0xf8f1, 236 },
00590 { 0xf8f2, 237 },
00591 { 0xf8f3, 238 },
00592 { 0xf8f4, 239 },
00593 { 0xf8f5, 244 },
00594 { 0xf8f6, 246 },
00595 { 0xf8f7, 247 },
00596 { 0xf8f8, 248 },
00597 { 0xf8f9, 249 },
00598 { 0xf8fa, 250 },
00599 { 0xf8fb, 251 },
00600 { 0xf8fc, 252 },
00601 { 0xf8fd, 253 },
00602 { 0xf8fe, 254 },
00603 };
00604
00605 #endif // __PLUNICODE_TYPE1_H__