\mathrm{} 还是 \mbox{}?写方程式时的惯例是什么?

\mathrm{} 还是 \mbox{}?写方程式时的惯例是什么?

在写方程式时,有时我们需要用非斜体字母书写。例如,设A是矩阵,则其转置应该是A^{\mathrm{T}}而不是A^T。此外,如果字母不代表变量,则它也不应该是斜体。

我的问题是:有几种方法,例如\mathrm{}\mbox{}。它们会给出略有不同的结果。让我们以矩阵的转置为例。我们应该使用哪一个?A^{\mbox{T}}A^{\mathrm{T}}?撰写技术论文时的惯例是什么?

答案1

首先,您应该使用该amsmath包,该包使命令能够\textrm尊重下标和上标的大小。

\mathrm和有什么区别\textrm?前者选择一个数学字母,即字体属性的固定组合,通常

  • 编码:OT1
  • 家庭:默认罗马家庭(\rmdefault
  • 重量:中等
  • 形 状: 正常

后者(\textrm)构建了一个框,在其中\rmfamily发出,但与每个\text...命令一样,所有其他字体属性相对于公式之外的当前字体保持不变。因此,使用以下输入

\documentclass{article}
\usepackage{amsmath}
\begin{document}
A test $a^\textrm{test}$

\itshape A test $a^\textrm{test}$
\end{document}

第一个“测试”将为直立,第二个将为斜体。在粗体上下文中,粗体系列属性不会改变。

该命令\text将简单地选择公式之外的当前字体。

另一个区别是\math...命令会忽略其参数中的空格,而\text...命令则不会。

如果你的问题是插入不代表数学变量的字母(通常作为下标),比如“有效力”Feff,您应该使用\textnormal\mathrm(后者对于可以使用的字符有限制,即只能使用未修饰的拉丁字母):

\mathbf{F}_\textnormal{eff}

因此,对于您的转置运算符,您可以使用\mathrm{T},可能隐藏在个人命令中:

\newcommand{\transp}{\mathrm{T}}

以及$A^\transp$“A 的转置”。对于更复杂的输入,\textnormal将是更好的选择。

相反,对于文本插入公式,例如

\[
a = b \quad\text{if and only if}\quad b = a
\]

应该使用\text,这样它将继承周围的字体属性。

答案2

使用总是\text{..}来自包的宏amsmath。它考虑了周围的文本大小并使用文本字体。比较:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{libertine}
\usepackage{amsmath}

\begin{document}
\huge
$x^{\mathrm{ffa}}x^{\mbox{ffa}}x^{\text{ffa}}$ 
\end{document}

在此处输入图片描述

相关内容