字体出现在地图文件中,但 pdflatex 找不到它

字体出现在地图文件中,但 pdflatex 找不到它

我使用来自 CTAN 的 libertinus-type1.tds.zip 文件安装了 libertinus-type1 包:https://ctan.org/pkg/libertinus-type1。然后我运行updmap-sys --enable Map=libertinus.map。然后我创建了以下测试文件:

\documentclass{article}
\usepackage{libertinus-type1}
\begin{document}
this is a test.
\end{document}

并尝试使用 pdflatex 进行处理。这会产生有关缺少字体的错误:

kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 LibertinusSerif-Regular-tlf-ot1
mktexpk: don't know how to create bitmap font for LibertinusSerif-Regular-tlf-ot1.
mktexpk: perhaps LibertinusSerif-Regular-tlf-ot1 is missing from the map file.

查看 libertinus.map,我看到:

LibertinusSerif-Regular-tlf-ot1 LibertinusSerif-Regular "AutoEnc_674lrvy3qk43r3lrh7l6fe3tve ReEncodeFont" <[lbts_674lrv.enc <LibertinusSerif-Regular.pfb

kpsewhich 确认 pfb 和 enc 文件存在:

kpsewhich LibertinusSerif-Regular.pfb
/usr/share/texlive/texmf-dist/fonts/type1/public/libertinus-type1/LibertinusSerif-Regular.pfb

kpsewhich lbts_674lrv.enc
/usr/share/texlive/texmf-dist/fonts/enc/dvips/libertinus-type1/lbts_674lrv.enc

并且 libertinus.map 文件实际上包含在 updmap.cfg 中:

kpsewhich updmap.cfg
/usr/share/texlive/texmf-config/web2c/updmap.cfg

cat /usr/share/texlive/texmf-config/web2c/updmap.cfg | grep libertinus.map
Map libertinus.map

我如何才能查明为什么此字体不起作用?我对 LaTeX 字体的了解已经远远不够了。

更新:

Ulrike Fischer 的评论让我意识到 pdftex.map 没有更新,从而引导我找到了解决方案。updmap.cfg 中有一个不存在的映射文件的虚假条目,导致 updmap-sys 失败。

我第一次运行它来添加 libertinus.map 时,它吐出了很多消息,我错过了错误消息。我只能通过手动编辑 updmap.cfg 来删除 libertinus.map,然后重新运行 才能再次看到它们updmap-sys --enable Map=libertinus.map。仅仅执行--disable显然不足以触发重新构建所有地图,而且我犹豫着要不要执行--force,因为我不确定发生了什么。看到错误后,我手动删除了虚假条目(并删除了 libertinus.map 的条目),然后重新运行 updmap-sys,现在一切都正常了。感谢大家的建议。

相关内容