LuaTeX 和 XeTeX 正在从 fontspec 包传递警告,我不确定我是否应该担心。以下最小代码将生成警告:
\documentclass{report}
\usepackage{fontspec}
\setmainfont[Script=Cyrillic]{Arial}
\begin{document}
\end{document}
警告是
fontspec warning: "script-not-exist"
Font 'Arial' does not contain script 'Cyrillic'.
例如,将“Arial”替换为“Charis SIL”不会导致警告。
我相信我已经将问题追溯到 fc-list/fontconfig。在 Arial 字体的 fc-list 输出中,我得到以下“功能”行:
capability: "otlayout:arab otlayout:hebr otlayout:latn"(s)
该行没有提到西里尔文(根据\newfontscript{Cyrillic}{cyrl}
fontspec-xetex.sty 中的行,这将是代码“cyrl”)。我没有收到此警告的字体,例如 Charis SIL,在其功能行中明确提到了 Cyrillic:
capability: "ttable:Silf otlayout:DFLT otlayout:cyrl otlayout:latn"(s)
不幸的是,在 fc-list 的输出中这个“能力”行的文档仅限于该行
capability String List of layout capabilities in the font
(来自https://www.freedesktop.org/software/fontconfig/fontconfig-user.html和网络上的其他几个地方)
我的问题基本上是,我应该担心这个警告信息吗?Arial(和 Charis)在“lang”字段中列出“ru”,即俄语的 ISO 639-1 代码。Charis SIL 支持的 Cyrillic 脚本的这种“布局”功能是什么,但 Arial 显然不支持,为什么它很重要?
顺便说一句,这是 TeX Live 2017 发行版。