MiKTeX 软件包更新后,fontspec \setmainfont 和 fontspec 无法编译

MiKTeX 软件包更新后,fontspec \setmainfont 和 fontspec 无法编译

我今天 (2021 年 12 月 7 日) 使用 MiKTeX 控制台更新了每个包,现在使用 XeLaTeX 编译任何使用\setmainfont或 的文档时遇到问题\fontspec,但加载fontspec包可以正常工作。有时它们可​​以工作,但通常不工作,而且我无法确定它们在什么条件下可以工作。删除辅助文件不会改变任何东西;我以为可以在不使用 synctex 作为命令选项时生成 pdf,但它似乎也不总是有效。我fontspec已经尝试重新安装了。尝试编译 .tex 文件,它给我留下了一个空的或不完整的 .log 文件和一个 .synctex(busy) 文件。到达 后它往往会崩溃fontspec.cfg

以下是导致我出现问题的 MWE:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Latin Modern Roman}

\begin{document}
Hello World!

\fontspec{Consolas}
Try this thing?

\IfFontExistsTF{Latin Modern Roman}{T}{F}

\IfFontExistsTF{Times New Roman}{T}{F}

\IfFontExistsTF{Consolas}{T}{F}

\end{document}

在某些时候,注释掉 时它会起作用\setmainfont,但现在除非也注释掉 ,否则它不起作用\fontspec。生成的 pdf 仍然包含三个 的“T” \IfFontExistsTF

抱歉,如果缺少详细信息,但我真的不知道还要寻找什么,这是我能找到的最好的解决方法。如果有帮助的话,我可以发送已更新软件包的列表。

答案1

这是由于 miktex xetex 二进制文件中的错误造成的。已在此处报告

https://github.com/MiKTeX/miktex/issues/984

作为一种解决方法,请使用 lualatex。

相关内容