在 LuaTeX 中选择主要数学字体?

在 LuaTeX 中选择主要数学字体?

我需要使用 LuaTeX 在 Minion Pro(以及可能的其他系统字体)中设置一些相当简单的数学运算。我希望类似下面的内容可以工作:

\documentclass{minimal}

\usepackage{fontspec}
\setmainfont{Minion Pro}

\begin{document}
Here’s some text.  Now some math: $x^2 + y^2 = z^2$.
\end{document}

但是,x^2 + y^2 + z^2是在 Computer Modern 中设置的。 等中的材料\mathit如愿\mathrm出现在 Minion 中,并且可以通过\setmathrm等进一步控制,但是有没有什么办法可以控制主数学字体呢?

我没有 Minion Math,尝试使用普通的 Minion Pro 作为数学字体也unicode-math无济于事——事实上,它将\mathit材料放回 CM! MnSymbol也无济于事。但无论如何,如果可能的话,我更喜欢一种可以推广到其他字体的解决方案。

或者,改用 XeLaTeX,该mathspec软件包可以使用\setmathfont(Digits,Latin){Minion Pro}。但我很难过放弃microtypeLuaTeX 的其余功能!

答案1

简单地设置\usemathfont{Minion Pro}unicode-math行不通的,因为它需要 OpenType 数学字体,但您可以使用range选项对某些数学字母(或任何数学符号)使用普通文本字体,请查看文档了解详情。

\documentclass{minimal}

\usepackage{fontspec}
\usepackage{unicode-math}
\setmainfont{Minion Pro}
\setmathfont{Asana Math} % for math symbols, can be any other OpenType math font
\setmathfont[range=\mathup]  {Minion Pro}
\setmathfont[range=\mathbfup]{Minion Pro Bold}
\setmathfont[range=\mathbfit]{Minion Pro Bold Italic}
\setmathfont[range=\mathit]  {Minion Pro Italic}

\begin{document}
Here’s some text.  Now some math: $x^2 + y^2 = z^2$, $\mathrm{x^2 + y^2 = z^2}$, $\mathbfit{x^2 + y^2 = z^2}$, $\mathbf{x^2 + y^2 = z^2}$.
\end{document}

答案2

您可以使用mathastext包裹:

\documentclass{article}

\usepackage[no-math]{fontspec}
\setmainfont{Minion Pro}
\usepackage[italic]{mathastext}

\begin{document}
Here’s some text.  Now some math: $x^2 + y^2 = z^2$.
\end{document}

代码输出

相关内容