这最新的的版本newtx
会干扰ctex
,这里是 MWE:
\documentclass{ctexart}
\usepackage{newtxtext}
\begin{document}
Hello, 你好.
\end{document}
我已经通过 升级到最新版本newtx
(1.732, Nov 6 2023) tlmgr
,在使用 XeLaTeX 编译时出现以下错误:
LaTeX Error: Option clash for package fontspec.
然而,在 Overleaf 上编译时(这是我的Overleaf 项目链接),它运行得非常好。
通过试验Tex Live 2022,我发现只有最新版本newtx
才有这个问题。
这是一个错误,还是我使用不正确?
看完之后这个答案(对于\RequirePackage[no-math]{fontspec}
)和这个答案(对于\defaultfontfeatures{}
),我想出了以下解决方法,效果很好:
\RequirePackage[no-math]{fontspec}
\documentclass{ctexart}
\usepackage{newtxtext}
\defaultfontfeatures{}
\begin{document}
Hello, 你好.
\end{document}
但是前面的命令\documentclass
很烦人。另外,我真的不知道为什么这样做有效。
由于我正在为其他人编写模板,我想知道这是否是一个可靠的解决方法。
答案1
不确定为什么之前没有或者现在有,但newtxtext
想要fontspec
使用该no-math
选项加载。
也许存在原生的 CTEX 方法,但是以下解决方法似乎可以完成工作:
\PassOptionsToPackage{no-math}{fontspec}
\documentclass{ctexart}
\usepackage{newtxtext}
\begin{document}
Hello, 你好.
\end{document}