最新的newtxtext
软件包(v1.601,2019 年 10 月 2 日)似乎破坏了该\footnote
命令。
这是 MWE
\documentclass{IEEEtran}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{newtxtext} % <------ comment this line to get a successful compilation
\begin{document}
Testing Footnotes\footnote{This is a test for the footnote command}.
\end{document}
使用编译时pdflatex
,我收到以下错误消息
!pdfTeX 错误:pdflatex (文件 ntxsups_T1.enc):无法打开编码文件进行读取 ==> 发生致命错误,未生成输出 PDF 文件!
该文件位于/usr/local/texlive/2019/texmf-dist/fonts/enc/dvips/newtx/ntxsups_t1.enc
(可疑的是它位于dvips
文件夹下)。
我该如何解决这个问题?
更新 1
的作者/维护者newtx
已经承认了这个问题并表示他们将很快发布修复程序。
更新 2
软件包作者/维护者已确认已将修复此问题的版本上传至 CTAN。我非常感谢他们对此的及时回复。
感谢这里热心的成员为此事提供解决方法。
答案1
enc
文件位于子树中是很正常的dvips
。这里的问题是map
文件请求ntxsups_T1.enc
但实际文件名为ntxsups_t1.enc
。这在不区分大小写的文件系统上没有问题。作为一种解决方法,我会尝试(未经测试):
$ mkdir -p ~/texmf/fonts/enc/dvips/newtx
$ cp /usr/local/texlive/2019/texmf-dist/fonts/enc/dvips/newtx/ntxsups_t1.enc \
~/texmf/fonts/enc/dvips/newtx/ntxsups_T1.enc
答案2
发行版提供了重建主地图文件(主要是)的newtx
文件。在这个文件中,我们读到newtx.map
pdftex.map
ntxsups-Regular-ot1 ntxsups-Regular " ntxsupsOT1Encoding ReEncodeFont " <[ntxsups_OT1.enc <ntxsups-Regular.pfb
ntxsups-Regular-t1 ntxsups-Regular " ntxsupsT1Encoding ReEncodeFont " <[ntxsups_T1.enc <ntxsups-Regular.pfb
ntxsups-Regular-ly1 ntxsups-Regular " ntxsupsLY1Encoding ReEncodeFont " <[ntxsups_LY1.enc <ntxsups-Regular.pfb
ntxsups-Italic-ot1 ntxsups-Italic " ntxsupsOT1Encoding ReEncodeFont " <[ntxsups_OT1.enc <ntxsups-Italic.pfb
ntxsups-Italic-t1 ntxsups-Italic " ntxsupsT1Encoding ReEncodeFont " <[ntxsups_T1.enc <ntxsups-Italic.pfb
ntxsups-Italic-ly1 ntxsups-Italic " ntxsupsLY1Encoding ReEncodeFont " <[ntxsups_LY1.enc <ntxsups-Italic.pfb
ntxsups-Bold-ot1 ntxsups-Bold " ntxsupsOT1Encoding ReEncodeFont " <[ntxsups_OT1.enc <ntxsups-Bold.pfb
ntxsups-Bold-t1 ntxsups-Bold " ntxsupsT1Encoding ReEncodeFont " <[ntxsups_T1.enc <ntxsups-Bold.pfb
ntxsups-Bold-ly1 ntxsups-Bold " ntxsupsLY1Encoding ReEncodeFont " <[ntxsups_LY1.enc <ntxsups-Bold.pfb
ntxsups-BoldItalic-ot1 ntxsups-BoldItalic " ntxsupsOT1Encoding ReEncodeFont " <[ntxsups_OT1.enc <ntxsups-BoldItalic.pfb
ntxsups-BoldItalic-t1 ntxsups-BoldItalic " ntxsupsT1Encoding ReEncodeFont " <[ntxsups_T1.enc <ntxsups-BoldItalic.pfb
ntxsups-BoldItalic-ly1 ntxsups-BoldItalic " ntxsupsLY1Encoding ReEncodeFont " <ntxsups_LY1.enc <ntxsups-BoldItalic.pfb
但相应的文件名为
ntxsups_ot1.enc
ntxsups_t1.enc
ntxsups_ly1.enc
该newtx.map
文件应修复以包含正确的名称。此问题不会出现在不区分大小写的 Windows 系统上。
开放适当特权
/usr/local/texlive/2019/texmf-dist/fonts/map/dvips/newtx/newtx.map
修复上面显示的错误条目,更改文件名以匹配分发的文件名,保存并再次使用适当的权限运行
updmap -sys
一旦软件包更新,修复就会消失,无论软件包维护者选择使用何种方法来纠正错误行为。
已对修复进行了测试。