latin_enc.py 7.73 KB
Newer Older
1

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164

""" Standard encoding tables used in PDF.

This table is extracted from PDF Reference Manual 1.6, pp.925
  "D.1 Latin Character Set and Encodings"

"""

ENCODING = [
  # (name, std, mac, win, pdf)
  ('A', 65, 65, 65, 65),
  ('AE', 225, 174, 198, 198),
  ('Aacute', None, 231, 193, 193),
  ('Acircumflex', None, 229, 194, 194),
  ('Adieresis', None, 128, 196, 196),
  ('Agrave', None, 203, 192, 192),
  ('Aring', None, 129, 197, 197),
  ('Atilde', None, 204, 195, 195),
  ('B', 66, 66, 66, 66),
  ('C', 67, 67, 67, 67),
  ('Ccedilla', None, 130, 199, 199),
  ('D', 68, 68, 68, 68),
  ('E', 69, 69, 69, 69),
  ('Eacute', None, 131, 201, 201),
  ('Ecircumflex', None, 230, 202, 202),
  ('Edieresis', None, 232, 203, 203),
  ('Egrave', None, 233, 200, 200),
  ('Eth', None, None, 208, 208),
  ('Euro', None, None, 128, 160),
  ('F', 70, 70, 70, 70),
  ('G', 71, 71, 71, 71),
  ('H', 72, 72, 72, 72),
  ('I', 73, 73, 73, 73),
  ('Iacute', None, 234, 205, 205),
  ('Icircumflex', None, 235, 206, 206),
  ('Idieresis', None, 236, 207, 207),
  ('Igrave', None, 237, 204, 204),
  ('J', 74, 74, 74, 74),
  ('K', 75, 75, 75, 75),
  ('L', 76, 76, 76, 76),
  ('Lslash', 232, None, None, 149),
  ('M', 77, 77, 77, 77),
  ('N', 78, 78, 78, 78),
  ('Ntilde', None, 132, 209, 209),
  ('O', 79, 79, 79, 79),
  ('OE', 234, 206, 140, 150),
  ('Oacute', None, 238, 211, 211),
  ('Ocircumflex', None, 239, 212, 212),
  ('Odieresis', None, 133, 214, 214),
  ('Ograve', None, 241, 210, 210),
  ('Oslash', 233, 175, 216, 216),
  ('Otilde', None, 205, 213, 213),
  ('P', 80, 80, 80, 80),
  ('Q', 81, 81, 81, 81),
  ('R', 82, 82, 82, 82),
  ('S', 83, 83, 83, 83),
  ('Scaron', None, None, 138, 151),
  ('T', 84, 84, 84, 84),
  ('Thorn', None, None, 222, 222),
  ('U', 85, 85, 85, 85),
  ('Uacute', None, 242, 218, 218),
  ('Ucircumflex', None, 243, 219, 219),
  ('Udieresis', None, 134, 220, 220),
  ('Ugrave', None, 244, 217, 217),
  ('V', 86, 86, 86, 86),
  ('W', 87, 87, 87, 87),
  ('X', 88, 88, 88, 88),
  ('Y', 89, 89, 89, 89),
  ('Yacute', None, None, 221, 221),
  ('Ydieresis', None, 217, 159, 152),
  ('Z', 90, 90, 90, 90),
  ('Zcaron', None, None, 142, 153),
  ('a', 97, 97, 97, 97),
  ('aacute', None, 135, 225, 225),
  ('acircumflex', None, 137, 226, 226),
  ('acute', 194, 171, 180, 180),
  ('adieresis', None, 138, 228, 228),
  ('ae', 241, 190, 230, 230),
  ('agrave', None, 136, 224, 224),
  ('ampersand', 38, 38, 38, 38),
  ('aring', None, 140, 229, 229),
  ('asciicircum', 94, 94, 94, 94),
  ('asciitilde', 126, 126, 126, 126),
  ('asterisk', 42, 42, 42, 42),
  ('at', 64, 64, 64, 64),
  ('atilde', None, 139, 227, 227),
  ('b', 98, 98, 98, 98),
  ('backslash', 92, 92, 92, 92),
  ('bar', 124, 124, 124, 124),
  ('braceleft', 123, 123, 123, 123),
  ('braceright', 125, 125, 125, 125),
  ('bracketleft', 91, 91, 91, 91),
  ('bracketright', 93, 93, 93, 93),
  ('breve', 198, 249, None, 24),
  ('brokenbar', None, None, 166, 166),
  ('bullet', 183, 165, 149, 128),
  ('c', 99, 99, 99, 99),
  ('caron', 207, 255, None, 25),
  ('ccedilla', None, 141, 231, 231),
  ('cedilla', 203, 252, 184, 184),
  ('cent', 162, 162, 162, 162),
  ('circumflex', 195, 246, 136, 26),
  ('colon', 58, 58, 58, 58),
  ('comma', 44, 44, 44, 44),
  ('copyright', None, 169, 169, 169),
  ('currency', 168, 219, 164, 164),
  ('d', 100, 100, 100, 100),
  ('dagger', 178, 160, 134, 129),
  ('daggerdbl', 179, 224, 135, 130),
  ('degree', None, 161, 176, 176),
  ('dieresis', 200, 172, 168, 168),
  ('divide', None, 214, 247, 247),
  ('dollar', 36, 36, 36, 36),
  ('dotaccent', 199, 250, None, 27),
  ('dotlessi', 245, 245, None, 154),
  ('e', 101, 101, 101, 101),
  ('eacute', None, 142, 233, 233),
  ('ecircumflex', None, 144, 234, 234),
  ('edieresis', None, 145, 235, 235),
  ('egrave', None, 143, 232, 232),
  ('eight', 56, 56, 56, 56),
  ('ellipsis', 188, 201, 133, 131),
  ('emdash', 208, 209, 151, 132),
  ('endash', 177, 208, 150, 133),
  ('equal', 61, 61, 61, 61),
  ('eth', None, None, 240, 240),
  ('exclam', 33, 33, 33, 33),
  ('exclamdown', 161, 193, 161, 161),
  ('f', 102, 102, 102, 102),
  ('fi', 174, 222, None, 147),
  ('five', 53, 53, 53, 53),
  ('fl', 175, 223, None, 148),
  ('florin', 166, 196, 131, 134),
  ('four', 52, 52, 52, 52),
  ('fraction', 164, 218, None, 135),
  ('g', 103, 103, 103, 103),
  ('germandbls', 251, 167, 223, 223),
  ('grave', 193, 96, 96, 96),
  ('greater', 62, 62, 62, 62),
  ('guillemotleft', 171, 199, 171, 171),
  ('guillemotright', 187, 200, 187, 187),
  ('guilsinglleft', 172, 220, 139, 136),
  ('guilsinglright', 173, 221, 155, 137),
  ('h', 104, 104, 104, 104),
  ('hungarumlaut', 205, 253, None, 28),
  ('hyphen', 45, 45, 45, 45),
  ('i', 105, 105, 105, 105),
  ('iacute', None, 146, 237, 237),
  ('icircumflex', None, 148, 238, 238),
  ('idieresis', None, 149, 239, 239),
  ('igrave', None, 147, 236, 236),
  ('j', 106, 106, 106, 106),
  ('k', 107, 107, 107, 107),
  ('l', 108, 108, 108, 108),
  ('less', 60, 60, 60, 60),
  ('logicalnot', None, 194, 172, 172),
  ('lslash', 248, None, None, 155),
  ('m', 109, 109, 109, 109),
  ('macron', 197, 248, 175, 175),
  ('minus', None, None, None, 138),
  ('mu', None, 181, 181, 181),
  ('multiply', None, None, 215, 215),
  ('n', 110, 110, 110, 110),
165
  ('nbspace', None, 202, 160, None),
166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215
  ('nine', 57, 57, 57, 57),
  ('ntilde', None, 150, 241, 241),
  ('numbersign', 35, 35, 35, 35),
  ('o', 111, 111, 111, 111),
  ('oacute', None, 151, 243, 243),
  ('ocircumflex', None, 153, 244, 244),
  ('odieresis', None, 154, 246, 246),
  ('oe', 250, 207, 156, 156),
  ('ogonek', 206, 254, None, 29),
  ('ograve', None, 152, 242, 242),
  ('one', 49, 49, 49, 49),
  ('onehalf', None, None, 189, 189),
  ('onequarter', None, None, 188, 188),
  ('onesuperior', None, None, 185, 185),
  ('ordfeminine', 227, 187, 170, 170),
  ('ordmasculine', 235, 188, 186, 186),
  ('oslash', 249, 191, 248, 248),
  ('otilde', None, 155, 245, 245),
  ('p', 112, 112, 112, 112),
  ('paragraph', 182, 166, 182, 182),
  ('parenleft', 40, 40, 40, 40),
  ('parenright', 41, 41, 41, 41),
  ('percent', 37, 37, 37, 37),
  ('period', 46, 46, 46, 46),
  ('periodcentered', 180, 225, 183, 183),
  ('perthousand', 189, 228, 137, 139),
  ('plus', 43, 43, 43, 43),
  ('plusminus', None, 177, 177, 177),
  ('q', 113, 113, 113, 113),
  ('question', 63, 63, 63, 63),
  ('questiondown', 191, 192, 191, 191),
  ('quotedbl', 34, 34, 34, 34),
  ('quotedblbase', 185, 227, 132, 140),
  ('quotedblleft', 170, 210, 147, 141),
  ('quotedblright', 186, 211, 148, 142),
  ('quoteleft', 96, 212, 145, 143),
  ('quoteright', 39, 213, 146, 144),
  ('quotesinglbase', 184, 226, 130, 145),
  ('quotesingle', 169, 39, 39, 39),
  ('r', 114, 114, 114, 114),
  ('registered', None, 168, 174, 174),
  ('ring', 202, 251, None, 30),
  ('s', 115, 115, 115, 115),
  ('scaron', None, None, 154, 157),
  ('section', 167, 164, 167, 167),
  ('semicolon', 59, 59, 59, 59),
  ('seven', 55, 55, 55, 55),
  ('six', 54, 54, 54, 54),
  ('slash', 47, 47, 47, 47),
  ('space', 32, 32, 32, 32),
216 217
  ('space', None, 202, 160, None),
  ('space', None, 202, 173, None),
218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244
  ('sterling', 163, 163, 163, 163),
  ('t', 116, 116, 116, 116),
  ('thorn', None, None, 254, 254),
  ('three', 51, 51, 51, 51),
  ('threequarters', None, None, 190, 190),
  ('threesuperior', None, None, 179, 179),
  ('tilde', 196, 247, 152, 31),
  ('trademark', None, 170, 153, 146),
  ('two', 50, 50, 50, 50),
  ('twosuperior', None, None, 178, 178),
  ('u', 117, 117, 117, 117),
  ('uacute', None, 156, 250, 250),
  ('ucircumflex', None, 158, 251, 251),
  ('udieresis', None, 159, 252, 252),
  ('ugrave', None, 157, 249, 249),
  ('underscore', 95, 95, 95, 95),
  ('v', 118, 118, 118, 118),
  ('w', 119, 119, 119, 119),
  ('x', 120, 120, 120, 120),
  ('y', 121, 121, 121, 121),
  ('yacute', None, None, 253, 253),
  ('ydieresis', None, 216, 255, 255),
  ('yen', 165, 180, 165, 165),
  ('z', 122, 122, 122, 122),
  ('zcaron', None, None, 158, 158),
  ('zero', 48, 48, 48, 48),
]