在 macOS Big Sur 下使用 LaTeX 时,以下文档无法编译:
\documentclass[]{article}
\usepackage{pigpen}
\begin{document}
{\pigpenfont L}
\end{document}
它产生以下控制台输出:
This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2022/dev) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./test.tex
LaTeX2e <2021-11-15> patch level 1
L3 programming layer <2022-01-12>
(/usr/local/texlive/2021/texmf-dist/tex/latex/base/article.cls
Document Class: article 2021/10/04 v1.4n Standard LaTeX document class
(/usr/local/texlive/2021/texmf-dist/tex/latex/base/size10.clo))
(/usr/local/texlive/2021/texmf-dist/tex/latex/pigpen/pigpen.sty
(/usr/local/texlive/2021/texmf-dist/tex/latex/pigpen/pigpen.tex))
(/usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def)
(./test.aux) [1{/usr/local/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdfte
x.map}] (./test.aux) )</usr/local/texlive/2021/texmf-dist/fonts/type1/public/am
sfonts/cm/cmr10.pfb><</usr/local/texlive/2021/texmf-dist/fonts/type1/public/pig
pen/pigpen.pfa>>
!pdfTeX error: /Library/TeX/texbin/pdflatex: builtin glyph names is empty
==> Fatal error occurred, no output PDF file produced!
有人知道问题出在哪里吗?去年还好用……
多谢。
答案1
2024 年更新更新的地图文件已上传至 ctan,因此不需要下面的修复。
从 texlive 2021 开始,LaTeX 默认包含字形到 Unicode 的映射。此字体显然在该设置下失败。您可以禁用此映射:
\documentclass[]{article}
\usepackage{pigpen}
\pdfgentounicode=0
\begin{document}
{\pigpenfont L}
\end{document}
你可以只为 pigpen 禁用此功能,但通过覆盖 pigpen 映射文件保留其他默认的 unicode 映射
\documentclass[]{article}
\usepackage{pigpen}
% \pdfgentounicode=0
\pdfmapline{=pigpen <pigpen.pfa}
\begin{document}
{\pigpenfont L}
\end{document}