247 lines
8.3 KiB
Python
247 lines
8.3 KiB
Python
""" 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"
|
|
|
|
"""
|
|
|
|
from typing import List, Optional, Tuple
|
|
|
|
EncodingRow = Tuple[str, Optional[int], Optional[int], Optional[int], Optional[int]]
|
|
|
|
ENCODING: List[EncodingRow] = [
|
|
# (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),
|
|
("nbspace", None, 202, 160, None),
|
|
("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),
|
|
("space", None, 202, 160, None),
|
|
("space", None, 202, 173, None),
|
|
("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),
|
|
]
|