LuaTeX 错误“表索引为零”加载带有 fontspec 的 Cinzel OTF 字体

LuaTeX 错误“表索引为零”加载带有 fontspec 的 Cinzel OTF 字体

在 Windows 7 中使用 MiKTeX 2.9 64 位(LuaTeX 版本 beta-0.70.2-2012060719)创建的 LuaLaTeX 文档中出现以下错误:

! LuaTeX error ...)/MiKTeX 2.9/tex/luatex/luaotfload/otfl-font-otf.lua:553: table index is nil.  
<to be read again>   
                   \scan_stop:   
l.10     {Cinzel-Regular}`  

以下是 MWE:

\documentclass[letterpaper,twoside,10pt,extrafontsizes, onecolumn,openany,final]{memoir}  
\usepackage{luatextra} % Package also loads fontspec  
\newfontfamily\memfont[Path=./Fonts/,%  
    Extension=.otf,%  
    ItalicFont=CinzelDecorative-Regular,%  
    BoldFont=Cinzel-Bold,%  
    BoldItalicFont=CinzelDecorative-Bold]%  
    {Cinzel-Regular}  
\begin{document}  
\memfont  
blah!  
\end{document}

如果我按 Enter 继续,则会收到一个字体规范错误,提示找不到字体,这很愚蠢。其他字体可以从同一位置正常加载,Cinzel 在 XeLaTeX 中运行时加载顺利;拼写或目录信息错误都不是问题所在。似乎 LuaTeX 就是不喜欢 Cinzel 的某些方面——Lua 在字体文件中寻找的某种“表格”缺失,而 XeTeX 可能只是忽略了它。如果有人想用 FontForge 探索字体本身,Cinzel 是根据 SIL 开放字体许可证免费分发的。还是 LuaTeX 只是在胡闹?有什么解决方法吗?或者我必须放弃 Cinzel,一款真正华丽的字体?

答案1

@Mico 和 @Ulrike,是的!我用它的更新实用程序更新了 MikTeX,不仅将 Lua 更新到版本 5.2 和其他相关版本,还将 luaoftload 和 fontspec 也更新了。对我来说,Cinzel 现在在 LuaLaTeX 中运行良好。我在这里学习了很多关于 TeX 系列语言和程序的知识,但在很多方面我仍然是一个新手。这是一个简单的解决方案,但现在我知道在发布之前我的第一步应该是更新我的软件。谢谢。

相关内容