粗体数学符号与文本模式相同。旧标准 TT XeLaTeX 字体设置

粗体数学符号与文本模式相同。旧标准 TT XeLaTeX 字体设置

我在文本和数学模式下使用 XeLaTeX 2023 编译器和 Old Standard TT 字体。但是,数学模式下的粗体字体根本不起作用。

我想使用字体的适当粗体文本符号作为默认粗体数学符号:字母符号(拉丁字母和希腊字母)如斜体+粗体,数字如常规文本。我还希望它们都可以自动缩放。

第一行显示文本模式斜体和常规字符,并且在下面的数学模式中存在相同的字符。

第三行显示文本模式粗体斜体和简单粗体字符。这些应该在下面的数学模式中出现,但实际上没有。

请注意文本模式和数学模式下 +、-、<、> 等符号之间的区别。因此,我们不应直接将粗体文本运算、关系等符号用作粗体数学字体。

任何问题的解决方案都会满足我的需求。提前感谢大家!

最小工作示例:

\documentclass[leqno,12pt]{extarticle}
\usepackage[paperheight=169mm,paperwidth=120mm,top=12pt,left=12pt,right=12pt,bottom=44pt]{geometry}
\usepackage{parskip}
\usepackage[oldstandard]{fontsetup}

\begin{document}

\textit{y A} 0 1 2 \textit{α β γ δ ε θ λ μ ξ π ρ τ φ χ ψ ω + -- < > = , . : ;}\\
$y, A, 0, 1, 2, \alpha, \beta, \gamma, \delta, \varepsilon, \theta, \lambda, \mu, \xi, \pi, \rho, \tau, \varphi, \chi, \omega, +, -, <, >, =, ., :, ;$

\textbf{\textit{y A} 0 1 2 \textit{α β γ δ ε θ λ μ ξ π ρ ς τ φ χ ψ ω + -- < > = , . : ;}}\\
\boldmath{$y, A, 0, 1, 2, \alpha, \beta, \gamma, \delta, \varepsilon, \theta, \lambda, \mu, \xi, \pi, \rho, \sigma, \tau, \varphi, \chi, \omega, +, -, <, >, =, ., :, ;$}

\end{document}

答案1

这是因为unicode-math不支持同时支持rangeversion选项。您可以在数学模式中设置或使用旧标准字母,但不能同时使用两者。您使用的包使用的是后者。\setmathfont\setmathfont[version=bold]

如果您只想要粗体字母(例如,对于矢量等),您可以使用\symbfup粗体直立 和\symbfit粗体斜体。\mathbf如果 Old Standard Bold 有符号,该命令应该会为您提供数学模式下粗体文本字体的符号。除非您指定类,否则这些符号不会有正确的间距,例如\mathbin\mathrel等。例如,\mathbin{\mathbf{+}}

如果您需要旧标准中没有的特定粗体数学符号,您可以通过 访问它\setmathfontface。但是,fontsetup使用 Garamond Math 作为其数学符号,它不是粗体。您可以使用该FakeBold选项,也可以从 XITS Math Bold 中获取。

如果您确实需要切换到粗体数学环境,请考虑定义一个可以更改\setmathfont然后恢复的数学环境。或者,选择与文本字体匹配的数学字体,而无需\setmathfont[range=

相关内容