mathspec 选项与 fontspec 冲突

mathspec 选项与 fontspec 冲突

我正在尝试使用mathspec firamath-otf包。我收到选项冲突错误fontspec

\documentclass{article}
\usepackage{firamath-otf}
%\usepackage[no-math]{mathspec}
%\usepackage[quiet]{mathspec}
\usepackage{mathspec}
\setmainfont{Arial}[Scale=1.2]
\setmathsfont(Digits){Arial}
\setmathsfont(Latin){Arial}
\begin{document}
Test.
\(ABCDEFGHJKLMNOPQRSTUVWXYZ\)
\(1234567890\)
\end{document}

我尝试使用不同的选项加载 mathspec,no-math以及quiet不使用任何选项。 都不起作用。firamath-otf加载unicode-math和不使用任何选项 unicode-math加载。使用默认选项加载。 如何解决这种冲突?fontspecmathspecfontspecno-math

答案1

抱歉,我错过了你 9 个月前发的帖子。另一种解决方案可能会在某些无法以不同顺序加载软件包或由 加载的情况下起作用,\documentclass即把这个命令放在序言的顶部附近:

\PassOptionsToPackage{no-math}{fontspec}

现在是一个框架挑战。

mathspec如果您正在加载,则不需要unicode-math。您没有使用旧式数学字体,或者任何其他功能unicode-math本身不提供,并且您会注意到,它们会发生冲突。删除对的依赖mathspec还可以让您在 LuaTeX 上进行编译。

\setmathfont您可以使用unicode-math或将数学字母设置为 OpenType 字体mathastext。最好将此 MWE 写为:

\documentclass{article}
\usepackage{firamath-otf}

\defaultfontfeatures{ Scale=MatchLowercase,  Ligatures=TeX }
\setmainfont{Arial}
\setmathfont{Arial}[range=up]
\setmathfont{Arial Italic}[range=it]
\setmathfont{Arial Bold}[range=bfup]
\setmathfont{Arial Bold Italic}[range=bfit]

\begin{document}
Test. \textit{ABC} 123 \\
\(ABCDEFGHJKLMNOPQRSTUVWXYZ\) \\
\(1234567890\) \\
\end{document}

或者:

\documentclass{article}
\usepackage{firamath-otf}

\defaultfontfeatures{ Scale=MatchLowercase,  Ligatures=TeX }
\setmainfont{Arial}
\usepackage{mathastext}

\begin{document}
Test. \textit{ABC} 123 \\
\(ABCDEFGHJKLMNOPQRSTUVWXYZ\) \\
\(1234567890\) \\
\end{document}

答案2

fontspec我最终通过在之前加载选项 no-math 解决了这个问题firamath-otf。修改后的 mwe 是

\documentclass{article}
\usepackage[no-math]{fontspec}
\usepackage{firamath-otf}
\usepackage{mathspec}
\setmainfont{Arial}[Scale=1.2]
\setmathsfont(Latin,Digits)[Uppercase=Regular,Lowercase=Regular,Scale=1.2]{Arial}
\begin{document}
Test.\\
\noindent ABCDEFGHIJKLMNOPQRSTUVWXYZ\\
\(ABCDEFGHIJKLMNOPQRSTUVWXYZ\)\\
1234567890\\
\(1234567890\)
\end{document}

编译时没有错误,输出也符合要求。希望使用 no-math 选项加载 fontspec 不会造成问题,因为 unicode-math 加载时没有任何选项。我祈祷一切顺利!

相关内容