当我尝试构建文档时,第一遍结束时看到以下错误:
</usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc(NotoSansCJKtc-Regular:3)
!LuaTeX error (file /usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc): sfnt: table not found...
这是 Ubuntu Xenial。我能做些什么来修复它吗?
我注意到一些与 Noto 字体和 XeLaTeX 相关的问题。但是我正在使用 LuaLaTeX,所以我提出了这个新问题。
更新
版本是这样的:
This is LuaTeX, Version beta-0.80.0 (TeX Live 2015/Debian) (rev 5238)
答案1
虽然NotoSansCJK-Regular.ttc
有一个.ttc
扩展名,但这实际上是一种开放类型集合格式的字体,正如谷歌所说这里。LuaTeX beta-0.81.0 版添加了对 OTC 格式的支持(请参阅修订版 5330)。因此,如果您使用的是旧版本的 LuaTeX(例如 TeX Live 2015 中的 beta-0.80.0 版本),则无法将 OTC 字体与 LuaTeX 一起使用。
让我们考虑以下文件:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{NotoSansCJK-Regular}
\begin{document}
Hello world.
\end{document}
如果我使用 LuaTeX 版本 beta-0.80.0 编译此文件,LuaLaTeX 会出现错误。
$ lualatex test.tex
This is LuaTeX, Version beta-0.80.0 (TeX Live 2015) (rev 5238)
restricted \write18 enabled.
# many logs here
!LuaTeX error (file ./NotoSansCJK-Regular.ttc): sfnt: table not found...
==> Fatal error occurred, no output PDF file produced!
如果我使用 LuaTeX 版本 0.95.0 进行编译,它可以运行良好。
$ lualatex test.tex
This is LuaTeX, Version 0.95.0 (TeX Live 2016)
restricted system commands enabled.
# many logs here
Output written on test.pdf (1 page, 3558 bytes).
Transcript written on test.log
这是输出(抱歉,日语 Acrobat Reader 不支持)。