lualatex + unicode-math:斜体拉丁文/拉丁文/希腊文和直立希腊文的粗体样式

lualatex + unicode-math:斜体拉丁文/拉丁文/希腊文和直立希腊文的粗体样式

我使用 LuaLatex

我想要这种样式:(0 为斜体,1 为直立)

      a A \gamma \Gamma
math  0 0    0      1
bold  0 0    0      1

但 style=TeX 提供:

      a A \gamma \Gamma
math  0 0    0      1
bold  1 1    0      1

并且 style=ISO 提供:

      a A \gamma \Gamma
math  0 0    0      0
bold  0 0    0      0

我想知道如何在这两者之间设置一种风格。

\documentclass{article}

\usepackage{unicode-math}
\unimathsetup{mathbf=sym,math-style=ISO,bold-style=ISO}
\begin{document}
\[
    a A \gamma \Gamma
\]
\[
    \mathbf{a} \mathbf{A} \mathbf{\gamma} \mathbf{\Gamma}
\]
\end{document}

答案1

没有官方界面,但样式由简单的内部布尔值控制:

\documentclass{article}

\usepackage{unicode-math}
\unimathsetup{mathbf=sym,math-style=ISO,bold-style=ISO}

\ExplSyntaxOn
\bool_gset_true:N\g__um_upGreek_bool
\bool_gset_true:N\g__um_bfupGreek_bool
\ExplSyntaxOff
\begin{document}
\[
    a A \gamma \Gamma
\]
\[
    \mathbf{a} \mathbf{A} \mathbf{\gamma} \mathbf{\Gamma}
\]
\end{document}

在此处输入图片描述

答案2

您没有指定要使用的 TeX 宏。如果您使用的是 OpTeX,则可以在 Unicode 数学中使用\_rmgreek和声明:\_rmGreek

\fontfam[lm]

% default: \_itvariables \_rmdigits \_itgreek \_rmGreek

$a, A, \gamma, \Gamma$,
$\boldmath a, A, \gamma, \Gamma$

\_itgreek \_itGreek  % ISO style

$a, A, \gamma, \Gamma$,
$\boldmath a, A, \gamma, \Gamma$

\_rmgreek \_rmGreek  % what you want:

$a, A, \gamma, \Gamma$,
$\boldmath a, A, \gamma, \Gamma$

\bye

相关内容