使用 `otftotfm` 和 Fontenc 的“损坏的 NFSS 表”

使用 `otftotfm` 和 Fontenc 的“损坏的 NFSS 表”

我刚刚使用 转换了一些 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.defelcrimson.fd均对 pdfTeX 可见,正如我使用 所验证的那样kpsewhich

感谢您的帮助!

答案1

你应该添加

\DeclareFontSubstitution{EL}{Crimson}{m}{n}
\DeclareErrorFont{EL}{Crimson}{m}{n}{10}

到你的elenc.def文件之后

\DeclareFontEncoding{EL}{}{}

相关内容