Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
MacRomanEncoding
n/a
0 / 0
n/a
0 / 0
0
n/a
0 / 0
1<?php
2declare(strict_types=1);
3/**
4 * Pop PHP Framework (https://www.popphp.org/)
5 *
6 * @link       https://github.com/popphp/popphp-framework
7 * @author     Nick Sagona, III <nick@popphp.org>
8 * @copyright  Copyright (c) 2009-2026 Nick Sagona, III
9 * @license    https://www.popphp.org/license     New BSD License
10 */
11
12/**
13 * @namespace
14 */
15namespace Pop\Pdf\Extract\Font\Encoding;
16
17/**
18 * Pdf extract MacRomanEncoding table class
19 *
20 * @category   Pop
21 * @package    Pop\Pdf
22 * @author     Nick Sagona, III <nick@popphp.org>
23 * @copyright  Copyright (c) 2009-2026 Nick Sagona, III
24 * @license    https://www.popphp.org/license     New BSD License
25 * @version    6.0.0
26 */
27class MacRomanEncoding
28{
29
30    /**
31     * MacRomanEncoding byte-to-Unicode codepoint table
32     */
33    public const TABLE = [
34        0x20 => 0x0020, 0x21 => 0x0021, 0x22 => 0x0022, 0x23 => 0x0023, 0x24 => 0x0024,
35        0x25 => 0x0025, 0x26 => 0x0026, 0x27 => 0x0027, 0x28 => 0x0028, 0x29 => 0x0029,
36        0x2A => 0x002A, 0x2B => 0x002B, 0x2C => 0x002C, 0x2D => 0x002D, 0x2E => 0x002E,
37        0x2F => 0x002F, 0x30 => 0x0030, 0x31 => 0x0031, 0x32 => 0x0032, 0x33 => 0x0033,
38        0x34 => 0x0034, 0x35 => 0x0035, 0x36 => 0x0036, 0x37 => 0x0037, 0x38 => 0x0038,
39        0x39 => 0x0039, 0x3A => 0x003A, 0x3B => 0x003B, 0x3C => 0x003C, 0x3D => 0x003D,
40        0x3E => 0x003E, 0x3F => 0x003F, 0x40 => 0x0040, 0x41 => 0x0041, 0x42 => 0x0042,
41        0x43 => 0x0043, 0x44 => 0x0044, 0x45 => 0x0045, 0x46 => 0x0046, 0x47 => 0x0047,
42        0x48 => 0x0048, 0x49 => 0x0049, 0x4A => 0x004A, 0x4B => 0x004B, 0x4C => 0x004C,
43        0x4D => 0x004D, 0x4E => 0x004E, 0x4F => 0x004F, 0x50 => 0x0050, 0x51 => 0x0051,
44        0x52 => 0x0052, 0x53 => 0x0053, 0x54 => 0x0054, 0x55 => 0x0055, 0x56 => 0x0056,
45        0x57 => 0x0057, 0x58 => 0x0058, 0x59 => 0x0059, 0x5A => 0x005A, 0x5B => 0x005B,
46        0x5C => 0x005C, 0x5D => 0x005D, 0x5E => 0x005E, 0x5F => 0x005F, 0x60 => 0x0060,
47        0x61 => 0x0061, 0x62 => 0x0062, 0x63 => 0x0063, 0x64 => 0x0064, 0x65 => 0x0065,
48        0x66 => 0x0066, 0x67 => 0x0067, 0x68 => 0x0068, 0x69 => 0x0069, 0x6A => 0x006A,
49        0x6B => 0x006B, 0x6C => 0x006C, 0x6D => 0x006D, 0x6E => 0x006E, 0x6F => 0x006F,
50        0x70 => 0x0070, 0x71 => 0x0071, 0x72 => 0x0072, 0x73 => 0x0073, 0x74 => 0x0074,
51        0x75 => 0x0075, 0x76 => 0x0076, 0x77 => 0x0077, 0x78 => 0x0078, 0x79 => 0x0079,
52        0x7A => 0x007A, 0x7B => 0x007B, 0x7C => 0x007C, 0x7D => 0x007D, 0x7E => 0x007E,
53        0x7F => 0x007F, 0x80 => 0x00C4, 0x81 => 0x00C5, 0x82 => 0x00C7, 0x83 => 0x00C9,
54        0x84 => 0x00D1, 0x85 => 0x00D6, 0x86 => 0x00DC, 0x87 => 0x00E1, 0x88 => 0x00E0,
55        0x89 => 0x00E2, 0x8A => 0x00E4, 0x8B => 0x00E3, 0x8C => 0x00E5, 0x8D => 0x00E7,
56        0x8E => 0x00E9, 0x8F => 0x00E8, 0x90 => 0x00EA, 0x91 => 0x00EB, 0x92 => 0x00ED,
57        0x93 => 0x00EC, 0x94 => 0x00EE, 0x95 => 0x00EF, 0x96 => 0x00F1, 0x97 => 0x00F3,
58        0x98 => 0x00F2, 0x99 => 0x00F4, 0x9A => 0x00F6, 0x9B => 0x00F5, 0x9C => 0x00FA,
59        0x9D => 0x00F9, 0x9E => 0x00FB, 0x9F => 0x00FC, 0xA0 => 0x2020, 0xA1 => 0x00B0,
60        0xA2 => 0x00A2, 0xA3 => 0x00A3, 0xA4 => 0x00A7, 0xA5 => 0x2022, 0xA6 => 0x00B6,
61        0xA7 => 0x00DF, 0xA8 => 0x00AE, 0xA9 => 0x00A9, 0xAA => 0x2122, 0xAB => 0x00B4,
62        0xAC => 0x00A8, 0xAD => 0x2260, 0xAE => 0x00C6, 0xAF => 0x00D8, 0xB0 => 0x221E,
63        0xB1 => 0x00B1, 0xB2 => 0x2264, 0xB3 => 0x2265, 0xB4 => 0x00A5, 0xB5 => 0x00B5,
64        0xB6 => 0x2202, 0xB7 => 0x2211, 0xB8 => 0x220F, 0xB9 => 0x03C0, 0xBA => 0x222B,
65        0xBB => 0x00AA, 0xBC => 0x00BA, 0xBD => 0x03A9, 0xBE => 0x00E6, 0xBF => 0x00F8,
66        0xC0 => 0x00BF, 0xC1 => 0x00A1, 0xC2 => 0x00AC, 0xC3 => 0x221A, 0xC4 => 0x0192,
67        0xC5 => 0x2248, 0xC6 => 0x0394, 0xC7 => 0x00AB, 0xC8 => 0x00BB, 0xC9 => 0x2026,
68        0xCA => 0x00A0, 0xCB => 0x00C0, 0xCC => 0x00C3, 0xCD => 0x00D5, 0xCE => 0x0152,
69        0xCF => 0x0153, 0xD0 => 0x2013, 0xD1 => 0x2014, 0xD2 => 0x201C, 0xD3 => 0x201D,
70        0xD4 => 0x2018, 0xD5 => 0x2019, 0xD6 => 0x00F7, 0xD7 => 0x25CA, 0xD8 => 0x00FF,
71        0xD9 => 0x0178, 0xDA => 0x2044, 0xDB => 0x20AC, 0xDC => 0x2039, 0xDD => 0x203A,
72        0xDE => 0xFB01, 0xDF => 0xFB02, 0xE0 => 0x2021, 0xE1 => 0x00B7, 0xE2 => 0x201A,
73        0xE3 => 0x201E, 0xE4 => 0x2030, 0xE5 => 0x00C2, 0xE6 => 0x00CA, 0xE7 => 0x00C1,
74        0xE8 => 0x00CB, 0xE9 => 0x00C8, 0xEA => 0x00CD, 0xEB => 0x00CE, 0xEC => 0x00CF,
75        0xED => 0x00CC, 0xEE => 0x00D3, 0xEF => 0x00D4, 0xF0 => 0xF8FF, 0xF1 => 0x00D2,
76        0xF2 => 0x00DA, 0xF3 => 0x00DB, 0xF4 => 0x00D9, 0xF5 => 0x0131, 0xF6 => 0x02C6,
77        0xF7 => 0x02DC, 0xF8 => 0x00AF, 0xF9 => 0x02D8, 0xFA => 0x02D9, 0xFB => 0x02DA,
78        0xFC => 0x00B8, 0xFD => 0x02DD, 0xFE => 0x02DB, 0xFF => 0x02C7,
79    ];
80
81}