\mathit 和 math-style 之间的区别 = TeX

\mathit 和 math-style 之间的区别 = TeX

我想知道数学模式下斜体\mathit设置之间有什么区别。[math-style = TeX]

这段代码可以更好地解释这一点

\documentclass{article}

\usepackage[math-style = TeX]{unicode-math}

\begin{document}

    \[ \mathit{\rho} \rho \]

\end{document}

只有后者会显示“斜体”样式(TeX 数学样式)。

如果加载了 unicode 数学字体(如 STIX Two Math),也会发生同样的情况,但这次矩形框内的十字将显示为\mathit{\rho}

以下是上述场景的代码

\documentclass{article}

\usepackage[math-style = TeX]{unicode-math}

\setmathfont{STIX Two Math}

\begin{document}

    \[ \mathit{\rho} \rho \]

\end{document}

答案1

我想知道数学模式下斜体\mathit设置之间有什么区别。[math-style = TeX]

unicode-math(a) 加载包并选择使用math-style斜体表示小写拉丁字母和希腊字母的 (例如,“TeX”或“ISO”) 与 (b) 使用 之间存在巨大差异。\mathit(附言:有关包提供的数学样式的更多信息unicode-math,请参阅包用户指南的第 5.1 节。)

使用\mathit与所选的数学样式完全无关。使用\mathit可能会产生意想不到的结果——至少一开始是这样。这是因为\mathit指令从文本字体访问其字母,不是来自数学字体。这是设计使然。根据 David Carlisle 的评论(见下文),\mathit应该用于多字母标识符,例如变量名称。对于变量名称,最好使用文本字体中的斜体,而不是“真正的”数学模式斜体。

请看下表,其中显示了四种可用的数学样式(ISO、TeX、法语和直立),以及小写和大写的拉丁字母和希腊字母。数学字体设置为Stix Two Text,而文本字体设置为Calibri。我选择了无衬线文本字体,以使文本和数学字体之间的区别一目了然。

确认我上面的断言,观察\mathit最后一列显示的输出确实不是使用数学字体系列中的字母。相反,它显然使用了文本字体系列中的字母。

在此处输入图片描述

\documentclass{article}
\usepackage{array}
\newcommand\myarray[1]{\par\noindent% 
% Structure of table:
  %col. 1: math style
  %col. 2: math mode, lowercase Latin letters
  %col. 3: math mode, uppercase Latin letters
  %col. 4: math mode, lowercase Greek letters
  %col. 5: math mode, uppercase Greek letters
  %=col. 6: output of \mathit
    $\begin{array}{@{}p{1.2cm} >{$}p{1cm}<{$} *{3}{>{$}p{0.6cm}<{$}} l }
    #1 & abcffi & XYZ & \alpha\beta\gamma & \Phi\Psi\Omega
    & \mathit{abcffi} \\ % <-- final column uses "\mathit{...}"
    \end{array}$}

\usepackage{unicode-math}
\setmainfont{Calibri}[ItalicFont="Calibri Italic"] % sans-serif text font
%% or: \setmainfont{Stix Two Text} 

\begin{document}
\setmathfont{Stix Two Math}[math-style = ISO]
\myarray{ISO}

\setmathfont{Stix Two Math}[math-style = TeX]
\myarray{TeX}

\setmathfont{Stix Two Math}[math-style = french]
\myarray{french}

\setmathfont{Stix Two Math}[math-style = upright]
\myarray{upright}
\end{document}

相关内容