我刚刚使用 转换了一些 OTF 字体otftotfm
;这些字体是使用我编写的自定义编码创建的EL
(我需要修改T1
编码以包含额外的连字符)。当我尝试在一个简单的文件中测试字体是否正常工作时,我得到了以下输出。是什么导致了“损坏的 NFSS 表”消息,我该如何解决这个问题?
LaTeX Font Warning: Font shape `EL/cmr/m/n' undefined
(Font) using `EL/cmr/m/n' instead on input line 100.
! Corrupted NFSS tables.
wrong@fontshape ...message {Corrupted NFSS tables}
error@fontshape else let f...
l.100 \fontencoding\encodingdefault\selectfont
我使用以下命令创建了字体。
otftotfm -a -e el.enc -fcalt -fdlig -ffrac -fkern -fonum -fordn -fpnum -fsinf \
-fsmcp -fsubs -fsups -fzero --vendor crimson Crimson-Roman.otf \
Crimson-Roman
这是我用来检查字体是否有效的测试文件。
\documentclass[a4paper]{article}
\usepackage[EL]{fontenc}
\pdfmapfile{crimson.map}
\renewcommand{\rmdefault}{Crimson}
\begin{document}
The
\end{document}
文件elenc.def
和elcrimson.fd
均对 pdfTeX 可见,正如我使用 所验证的那样kpsewhich
。
感谢您的帮助!
答案1
你应该添加
\DeclareFontSubstitution{EL}{Crimson}{m}{n}
\DeclareErrorFont{EL}{Crimson}{m}{n}{10}
到你的elenc.def
文件之后
\DeclareFontEncoding{EL}{}{}