A simple font’s Encoding turns each one-byte code into a glyph name, which
the font program then finds. PDF defines the Latin base encodings by name, gives the
fixed encodings of two of the standard 14 fonts, and names a set of CMaps for fonts with
multi-byte codes. These tables come from ISO 32000-1 Annex D, and from the PDF
References before it. Codes are hexadecimal; a code not listed has no glyph.
The Latin encodings
The four Latin encodings agree on most of the printable ASCII range, 20 to 7E, with the differences shown below. In every encoding the digits and the letters are the same:
30–39 zero one two three four five six seven eight nine
41–5A A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
61–7A a b c d e f g h i j k l m n o p q r s t u v w x y z
StandardEncoding
Adobe’s standard Latin encoding, the built-in encoding of most Type 1 fonts:
20 space 21 exclam 22 quotedbl 23 numbersign
24 dollar 25 percent 26 ampersand 27 quoteright
28 parenleft 29 parenright 2A asterisk 2B plus
2C comma 2D hyphen 2E period 2F slash
3A colon 3B semicolon 3C less 3D equal
3E greater 3F question 40 at
5B bracketleft 5C backslash 5D bracketright 5E asciicircum
5F underscore 60 quoteleft
7B braceleft 7C bar 7D braceright 7E asciitilde
A1 exclamdown A2 cent A3 sterling A4 fraction
A5 yen A6 florin A7 section A8 currency
A9 quotesingle AA quotedblleft AB guillemotleft AC guilsinglleft
AD guilsinglright AE fi AF fl
B1 endash B2 dagger B3 daggerdbl B4 periodcentered
B6 paragraph B7 bullet B8 quotesinglbase B9 quotedblbase
BA quotedblright BB guillemotright BC ellipsis BD perthousand
BF questiondown
C1 grave C2 acute C3 circumflex C4 tilde
C5 macron C6 breve C7 dotaccent C8 dieresis
CA ring CB cedilla CD hungarumlaut CE ogonek
CF caron D0 emdash
E1 AE E3 ordfeminine E8 Lslash E9 Oslash
EA OE EB ordmasculine F1 ae F5 dotlessi
F8 lslash F9 oslash FA oe FB germandbls
WinAnsiEncoding
Windows code page 1252. From 20 to 7E it is the same as StandardEncoding except
that 27 is quotesingle and 60 is
grave. Above that:
80 Euro 82 quotesinglbase 83 florin 84 quotedblbase
85 ellipsis 86 dagger 87 daggerdbl 88 circumflex
89 perthousand 8A Scaron 8B guilsinglleft 8C OE
8E Zcaron 91 quoteleft 92 quoteright 93 quotedblleft
94 quotedblright 95 bullet 96 endash 97 emdash
98 tilde 99 trademark 9A scaron 9B guilsinglright
9C oe 9E zcaron 9F Ydieresis
A0 space A1 exclamdown A2 cent A3 sterling
A4 currency A5 yen A6 brokenbar A7 section
A8 dieresis A9 copyright AA ordfeminine AB guillemotleft
AC logicalnot AD hyphen AE registered AF macron
B0 degree B1 plusminus B2 twosuperior B3 threesuperior
B4 acute B5 mu B6 paragraph B7 periodcentered
B8 cedilla B9 onesuperior BA ordmasculine BB guillemotright
BC onequarter BD onehalf BE threequarters BF questiondown
C0 Agrave C1 Aacute C2 Acircumflex C3 Atilde
C4 Adieresis C5 Aring C6 AE C7 Ccedilla
C8 Egrave C9 Eacute CA Ecircumflex CB Edieresis
CC Igrave CD Iacute CE Icircumflex CF Idieresis
D0 Eth D1 Ntilde D2 Ograve D3 Oacute
D4 Ocircumflex D5 Otilde D6 Odieresis D7 multiply
D8 Oslash D9 Ugrave DA Uacute DB Ucircumflex
DC Udieresis DD Yacute DE Thorn DF germandbls
E0 agrave E1 aacute E2 acircumflex E3 atilde
E4 adieresis E5 aring E6 ae E7 ccedilla
E8 egrave E9 eacute EA ecircumflex EB edieresis
EC igrave ED iacute EE icircumflex EF idieresis
F0 eth F1 ntilde F2 ograve F3 oacute
F4 ocircumflex F5 otilde F6 odieresis F7 divide
F8 oslash F9 ugrave FA uacute FB ucircumflex
FC udieresis FD yacute FE thorn FF ydieresis
A0 is a non-breaking space and AD a soft hyphen in
Windows, but in this encoding they are space and
hyphen.
MacRomanEncoding
The classic Mac OS Roman set. From 20 to 7E it is the same as WinAnsiEncoding. Above that:
80 Adieresis 81 Aring 82 Ccedilla 83 Eacute
84 Ntilde 85 Odieresis 86 Udieresis 87 aacute
88 agrave 89 acircumflex 8A adieresis 8B atilde
8C aring 8D ccedilla 8E eacute 8F egrave
90 ecircumflex 91 edieresis 92 iacute 93 igrave
94 icircumflex 95 idieresis 96 ntilde 97 oacute
98 ograve 99 ocircumflex 9A odieresis 9B otilde
9C uacute 9D ugrave 9E ucircumflex 9F udieresis
A0 dagger A1 degree A2 cent A3 sterling
A4 section A5 bullet A6 paragraph A7 germandbls
A8 registered A9 copyright AA trademark AB acute
AC dieresis AE AE AF Oslash B1 plusminus
B4 yen B5 mu BB ordfeminine BC ordmasculine
BE ae BF oslash C0 questiondown C1 exclamdown
C2 logicalnot C4 florin C7 guillemotleft C8 guillemotright
C9 ellipsis CA space CB Agrave CC Atilde
CD Otilde CE OE CF oe D0 endash
D1 emdash D2 quotedblleft D3 quotedblright D4 quoteleft
D5 quoteright D6 divide D8 ydieresis D9 Ydieresis
DA fraction DB currency DC guilsinglleft DD guilsinglright
DE fi DF fl E0 daggerdbl E1 periodcentered
E2 quotesinglbase E3 quotedblbase E4 perthousand E5 Acircumflex
E6 Ecircumflex E7 Aacute E8 Edieresis E9 Egrave
EA Iacute EB Icircumflex EC Idieresis ED Igrave
EE Oacute EF Ocircumflex F1 Ograve F2 Uacute
F3 Ucircumflex F4 Ugrave F5 dotlessi F6 circumflex
F7 tilde F8 macron F9 breve FA dotaccent
FB ring FC cedilla FD hungarumlaut FE ogonek
FF caron
The Latin character set of the standard has no glyphs for sixteen codes that the
Mac OS Roman character set uses. They are listed here because readers need them
for TrueType fonts whose Encoding is MacRomanEncoding:
AD notequal, B0 infinity, B2 lessequal,
B3 greaterequal, B6 partialdiff, B7 summation,
B8 product, B9 pi, BA integral,
BD Omega, C3 radical, C5 approxequal,
C6 Delta, D7 lozenge, DB Euro (where the
table above shows currency) and F0 apple.
PDFDocEncoding
The encoding of text strings, never of fonts. From 20 to 7E it is the same as WinAnsiEncoding. It adds eight accents at 18 to 1F, typographic characters at 80 to 9F, and is ISO Latin 1 above:
18 breve 19 caron 1A circumflex 1B dotaccent
1C hungarumlaut 1D ogonek 1E ring 1F tilde
80 bullet 81 dagger 82 daggerdbl 83 ellipsis
84 emdash 85 endash 86 florin 87 fraction
88 guilsinglleft 89 guilsinglright 8A minus 8B perthousand
8C quotedblbase 8D quotedblleft 8E quotedblright 8F quoteleft
90 quoteright 91 quotesinglbase 92 trademark 93 fi
94 fl 95 Lslash 96 OE 97 Scaron
98 Ydieresis 99 Zcaron 9A dotlessi 9B lslash
9C oe 9D scaron 9E zcaron A0 Euro
A1 to FF, apart from AD, are the same glyphs as WinAnsiEncoding at those codes. Codes 00 to 17 are control characters: line ends and tabs are meaningful in text strings, the others are not used.
MacExpertEncoding
The expert glyph set: small capitals, fractions, old-style figures and the rest.
It is a name that a simple font’s Encoding or
BaseEncoding can give. The Type 1 built-in “Expert” encoding is similar
but is not a PDF named encoding.
20 space 21 exclamsmall 22 Hungarumlautsmall 23 centoldstyle
24 dollaroldstyle 25 dollarsuperior 26 ampersandsmall 27 Acutesmall
28 parenleftsuperior 29 parenrightsuperior 2A twodotenleader 2B onedotenleader
2C comma 2D hyphen 2E period 2F fraction
30 zerooldstyle 31 oneoldstyle 32 twooldstyle 33 threeoldstyle
34 fouroldstyle 35 fiveoldstyle 36 sixoldstyle 37 sevenoldstyle
38 eightoldstyle 39 nineoldstyle 3A colon 3B semicolon
3D threequartersemdash 3F questionsmall 44 Ethsmall
47 onequarter 48 onehalf 49 threequarters 4A oneeighth
4B threeeighths 4C fiveeighths 4D seveneighths 4E onethird
4F twothirds 56 ff 57 fi 58 fl
59 ffi 5A ffl 5B parenleftinferior 5D parenrightinferior
5E Circumflexsmall 5F hypheninferior 60 Gravesmall
61–7A Asmall to Zsmall (Asmall Bsmall … Zsmall)
7B colonmonetary 7C onefitted 7D rupiah 7E Tildesmall
81 asuperior 82 centsuperior
87 Aacutesmall 88 Agravesmall 89 Acircumflexsmall 8A Adieresissmall
8B Atildesmall 8C Aringsmall 8D Ccedillasmall 8E Eacutesmall
8F Egravesmall 90 Ecircumflexsmall 91 Edieresissmall 92 Iacutesmall
93 Igravesmall 94 Icircumflexsmall 95 Idieresissmall 96 Ntildesmall
97 Oacutesmall 98 Ogravesmall 99 Ocircumflexsmall 9A Odieresissmall
9B Otildesmall 9C Uacutesmall 9D Ugravesmall 9E Ucircumflexsmall
9F Udieresissmall A1 eightsuperior A2 fourinferior A3 threeinferior
A4 sixinferior A5 eightinferior A6 seveninferior A7 Scaronsmall
A9 centinferior AA twoinferior AC Dieresissmall AE Caronsmall
AF osuperior B0 fiveinferior B2 commainferior B3 periodinferior
B4 Yacutesmall B6 dollarinferior B9 Thornsmall BB nineinferior
BC zeroinferior BD Zcaronsmall BE AEsmall BF Oslashsmall
C0 questiondownsmall C1 oneinferior C2 Lslashsmall C9 Cedillasmall
CF OEsmall D0 figuredash D1 hyphensuperior D6 exclamdownsmall
D8 Ydieresissmall DA onesuperior DB twosuperior DC threesuperior
DD foursuperior DE fivesuperior DF sixsuperior E0 sevensuperior
E1 ninesuperior E2 zerosuperior E4 esuperior E5 rsuperior
E6 tsuperior E9 isuperior EA ssuperior EB dsuperior
F1 lsuperior F2 Ogoneksmall F3 Brevesmall F4 Macronsmall
F5 bsuperior F6 nsuperior F7 msuperior F8 commasuperior
F9 periodsuperior FA Dotaccentsmall FB Ringsmall
Symbol
The built-in encoding of the standard Symbol font, used when it has no
Encoding:
20 space 21 exclam 22 universal 23 numbersign
24 existential 25 percent 26 ampersand 27 suchthat
28 parenleft 29 parenright 2A asteriskmath 2B plus
2C comma 2D minus 2E period 2F slash
30–39 zero one two three four five six seven eight nine
3A colon 3B semicolon 3C less 3D equal
3E greater 3F question 40 congruent
41 Alpha 42 Beta 43 Chi 44 Delta
45 Epsilon 46 Phi 47 Gamma 48 Eta
49 Iota 4A theta1 4B Kappa 4C Lambda
4D Mu 4E Nu 4F Omicron 50 Pi
51 Theta 52 Rho 53 Sigma 54 Tau
55 Upsilon 56 sigma1 57 Omega 58 Xi
59 Psi 5A Zeta 5B bracketleft 5C therefore
5D bracketright 5E perpendicular 5F underscore 60 radicalex
61 alpha 62 beta 63 chi 64 delta
65 epsilon 66 phi 67 gamma 68 eta
69 iota 6A phi1 6B kappa 6C lambda
6D mu 6E nu 6F omicron 70 pi
71 theta 72 rho 73 sigma 74 tau
75 upsilon 76 omega1 77 omega 78 xi
79 psi 7A zeta 7B braceleft 7C bar
7D braceright 7E similar A0 Euro A1 Upsilon1
A2 minute A3 lessequal A4 fraction A5 infinity
A6 florin A7 club A8 diamond A9 heart
AA spade AB arrowboth AC arrowleft AD arrowup
AE arrowright AF arrowdown B0 degree B1 plusminus
B2 second B3 greaterequal B4 multiply B5 proportional
B6 partialdiff B7 bullet B8 divide B9 notequal
BA equivalence BB approxequal BC ellipsis BD arrowvertex
BE arrowhorizex BF carriagereturn C0 aleph C1 Ifraktur
C2 Rfraktur C3 weierstrass C4 circlemultiply C5 circleplus
C6 emptyset C7 intersection C8 union C9 propersuperset
CA reflexsuperset CB notsubset CC propersubset CD reflexsubset
CE element CF notelement D0 angle D1 gradient
D2 registerserif D3 copyrightserif D4 trademarkserif D5 product
D6 radical D7 dotmath D8 logicalnot D9 logicaland
DA logicalor DB arrowdblboth DC arrowdblleft DD arrowdblup
DE arrowdblright DF arrowdbldown E0 lozenge E1 angleleft
E2 registersans E3 copyrightsans E4 trademarksans E5 summation
E6 parenlefttp E7 parenleftex E8 parenleftbt E9 bracketlefttp
EA bracketleftex EB bracketleftbt EC bracelefttp ED braceleftmid
EE braceleftbt EF braceex F1 angleright F2 integral
F3 integraltp F4 integralex F5 integralbt F6 parenrighttp
F7 parenrightex F8 parenrightbt F9 bracketrighttp FA bracketrightex
FB bracketrightbt FC bracerighttp FD bracerightmid FE bracerightbt
ZapfDingbats
The built-in encoding of the standard ZapfDingbats font. Its glyphs have
the names a1 to a206:
20 space 21 a1 22 a2 23 a202 24 a3 25 a4 26 a5 27 a119
28 a118 29 a117 2A a11 2B a12 2C a13 2D a14 2E a15 2F a16
30 a105 31 a17 32 a18 33 a19 34 a20 35 a21 36 a22 37 a23
38 a24 39 a25 3A a26 3B a27 3C a28 3D a6 3E a7 3F a8
40 a9 41 a10 42 a29 43 a30 44 a31 45 a32 46 a33 47 a34
48 a35 49 a36 4A a37 4B a38 4C a39 4D a40 4E a41 4F a42
50 a43 51 a44 52 a45 53 a46 54 a47 55 a48 56 a49 57 a50
58 a51 59 a52 5A a53 5B a54 5C a55 5D a56 5E a57 5F a58
60 a59 61 a60 62 a61 63 a62 64 a63 65 a64 66 a65 67 a66
68 a67 69 a68 6A a69 6B a70 6C a71 6D a72 6E a73 6F a74
70 a203 71 a75 72 a204 73 a76 74 a77 75 a78 76 a79 77 a81
78 a82 79 a83 7A a84 7B a97 7C a98 7D a99 7E a100
80 a89 81 a90 82 a93 83 a94 84 a91 85 a92 86 a205 87 a85
88 a206 89 a86 8A a87 8B a88 8C a95 8D a96
A1 a101 A2 a102 A3 a103 A4 a104 A5 a106 A6 a107 A7 a108 A8 a112
A9 a111 AA a110 AB a109 AC a120 AD a121 AE a122 AF a123 B0 a124
B1 a125 B2 a126 B3 a127 B4 a128 B5 a129 B6 a130 B7 a131 B8 a132
B9 a133 BA a134 BB a135 BC a136 BD a137 BE a138 BF a139 C0 a140
C1 a141 C2 a142 C3 a143 C4 a144 C5 a145 C6 a146 C7 a147 C8 a148
C9 a149 CA a150 CB a151 CC a152 CD a153 CE a154 CF a155 D0 a156
D1 a157 D2 a158 D3 a159 D4 a160 D5 a161 D6 a163 D7 a164 D8 a196
D9 a165 DA a192 DB a166 DC a167 DD a168 DE a169 DF a170 E0 a171
E1 a172 E2 a173 E3 a162 E4 a174 E5 a175 E6 a176 E7 a177 E8 a178
E9 a179 EA a193 EB a180 EC a199 ED a181 EE a200 EF a182 F1 a201
F2 a183 F3 a184 F4 a197 F5 a185 F6 a194 F7 a198 F8 a186 F9 a195
FA a187 FB a188 FC a189 FD a190 FE a191
Predefined CMaps
A Type 0 font can name a predefined CMap in Encoding. Each one maps
character codes of a named encoding to CIDs of a character collection. A
name ending -H or just H writes horizontally,
-V or V vertically. Readers need the CMap files for
CJK fonts only when the font is not embedded.
| Collection | Predefined CMaps |
|---|---|
| Adobe-GB1 (simplified Chinese) | GB-EUC-H GB-EUC-V GBpc-EUC-H GBpc-EUC-V GBK-EUC-H GBK-EUC-V GBKp-EUC-H GBKp-EUC-V GBK2K-H GBK2K-V UniGB-UCS2-H UniGB-UCS2-V UniGB-UTF16-H UniGB-UTF16-V |
| Adobe-CNS1 (traditional Chinese) | B5pc-H B5pc-V HKscs-B5-H HKscs-B5-V ETen-B5-H ETen-B5-V ETenms-B5-H ETenms-B5-V CNS-EUC-H CNS-EUC-V UniCNS-UCS2-H UniCNS-UCS2-V UniCNS-UTF16-H UniCNS-UTF16-V |
| Adobe-Japan1 (Japanese) | 83pv-RKSJ-H 90ms-RKSJ-H 90ms-RKSJ-V 90msp-RKSJ-H 90msp-RKSJ-V 90pv-RKSJ-H Add-RKSJ-H Add-RKSJ-V EUC-H EUC-V Ext-RKSJ-H Ext-RKSJ-V H V UniJIS-UCS2-H UniJIS-UCS2-V UniJIS-UCS2-HW-H UniJIS-UCS2-HW-V UniJIS-UTF16-H UniJIS-UTF16-V |
| Adobe-Korea1 (Korean) | KSC-EUC-H KSC-EUC-V KSCms-UHC-H KSCms-UHC-V KSCms-UHC-HW-H KSCms-UHC-HW-V KSCpc-EUC-H UniKS-UCS2-H UniKS-UCS2-V UniKS-UTF16-H UniKS-UTF16-V |
| Any | Identity-H Identity-V: two-byte codes equal to the CID |
Four more, Adobe-GB1-UCS2, Adobe-CNS1-UCS2,
Adobe-Japan1-UCS2 and Adobe-Korea1-UCS2, map those
collections’ CIDs to Unicode, for text extraction. They are not used as an
Encoding.