我正在使用 pdfTeX 创建 PDF。可惜,出版商的要求是其中的所有字形都映射到一个或多个 Unicode 代码点。我让这个适用于大多数字形,但不是所有字形:
\input glyphtounicode.tex
\pdfgentounicode=1
对于两个字形,即\nexists
(U+2204) 和\leftarrowtail
(U+21A2) amssymb
,看起来需要手动添加\pdfglyphtounicode
。但我找不到要传递什么作为其第一个参数,即字形名称。有什么提示吗?
答案1
以下适用于 TeX Live 发行版:
\usepackage{amssymb}
\ifdefined\pdffontattr
\immediate\pdfobj stream file {umsa.cmap}
{\usefont{U}{msa}{m}{n}\pdffontattr\font{/ToUnicode \the\pdflastobj\space 0 R}}
\immediate\pdfobj stream file {umsb.cmap}
{\usefont{U}{msb}{m}{n}\pdffontattr\font{/ToUnicode \the\pdflastobj\space 0 R}}
\fi
代码将 MSA 和 MSB 字体与适当的 CMAP 资源绑定。
答案2
我认为你需要咨询Unicode 代码表
这两个特殊情况似乎是theredoesnotexist
(2204) 和leftwardsarrowwithtail
(21A2)。
这些代码点也分别出现在texglyphlist.txt
、 和notexistential
中arrowtailleft
。尽管此文件在 TeXLive 中显示为
@/texmf-dist/fonts/map/glyphlist/texglyphlist.txt
我在 CTAN 上找不到它。
我也必须承认,我看不出有什么意义二名称集。