El uso pdftex
en los siguientes archivos cambia la codificación de la fuente de mapa de bits (esto se puede verificar copiando y pegando el texto del PDF resultante):
\pdfmapline{=cmr10 <cmr10.enc}
`hello world'
\end
donde cmr10.enc
es el siguiente (se diferencia del valor predeterminado solo en /quoteright
cambiado a /uni0027
y /quoteleft
cambiado a /uni0060
):
/MyCMRencoding [/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi
/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla
/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright
/numbersign/dollar/percent/ampersand/uni0027/parenleft/parenright
/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six
/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at
/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/bracketleft
/quotedblleft/bracketright/circumflex/dotaccent/uni0060/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/endash/emdash/hungarumlaut/tilde/dieresis
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
] def
Ahora cambia el \pdfmapline
a =cmr10 <cmr10.enc <cmr10.pfb
. pdftex
falla con este error:
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2019/dev/Debian) (preloaded format=pdftex)
restricted \write18 enabled.
entering extended mode
(./test.tex{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map} [1] ){cmr10.enc}
</usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb
pdfTeX warning: pdftex (file /usr/share/texlive/texmf-dist/fonts/type1/public/a
msfonts/cm/cmr10.pfb): glyph `uni0027' undefined
pdfTeX warning: pdftex (file /usr/share/texlive/texmf-dist/fonts/type1/public/a
msfonts/cm/cmr10.pfb): glyph `uni0060' undefined
>
Output written on test.pdf (1 page, 11512 bytes).
Transcript written on test.log.
Esto es extraño, porque en ambos casos se utiliza el mismo archivo enc. Y la fuente de mapa de bits demuestra que no hay ningún problema con el nombre uni0027
. Entonces, ¿por qué no es posible cambiar la codificación de la fuente Type1 en pdftex?
Respuesta1
Cuando usas la codificación para un mapa de bits, en realidad no vuelves a codificar la fuente. Para ver la diferencia intercambiemos A y B en tu mapa:
/B/A
Si luego compila (he cambiado el nombre de su mapa):
\pdfmapline{=cmr10 <testcmrenc.enc <cmr10.pfb}
`AB'
\end
la salida se ve así:
Entonces los glifos han sido recodificados y han cambiado de lugar.
si compilas
\pdfmapline{=cmr10 <testcmrenc.enc}
`AB'
\end
la salida se ve así:
Entonces no hay recodificación. Pero si luego copia y pega en el pdf, el resultado es
`BA'
Si elimina el comando mapline y copia y pega:
‘AB’
Observar que tanto el pedido como la cotización han cambiado.
Entonces, usar un vector de codificación con mapas de bits no cambia la codificación de los mapas de bits, sino que "sólo" se usa para mejorar copiar y pegar (lo cual ya es algo bastante bueno).