我想知道是否存在一个命令,或者我如何制作一个命令,它基本上可以完成与该\gcd
命令相同的操作,该命令在一对$
's 内以普通字母键入 gcd。我知道我可以使用\text{}
,但我发现类似命令的东西\gcd
使用起来更方便、更自然。
答案1
你写道你正在寻找
\gcd
该命令基本上可以完成与在 [数学模式] 下输入普通字母的命令相同的任务gcd
。...我知道我可以使用\text{}
...
这不完全正确。
宏
\gcd
,\log
,\det
,\sin
等是数学运算符,这意味着不仅字母“gcd”、“log”等会使用直立的数学模式字母排版,而且 TeX 还会在命令之前和(通常)之后插入一些空格。这
\text
相反,宏使用文档的文本字体来排版其参数,无论周围的文本模式是什么。这可能是“正常”,即直立字母。但是,如果周围的文本模式恰好是 或 ,它也可能是斜体,\itshape
可以\em
是粗体无衬线字体,等等。重要的是\text
,不是在其参数之前和之后插入空格。
我的直觉是,\mathrm
如果您希望使用文档的直立(“罗马”)数学字体排版参数,则您正在寻找 ,或者\textnormal
,如果您希望使用基本(即非粗体、非斜体)主文本字体。实际上,如果您确实需要空格来包围命令的输出,则可以通过指令声明数学运算符很简单\DeclareMathOperator
。比如说,
\DeclareMathOperator{\Henry}{Henry}
以下测试文档采用 Computer Modern 数学字体、Times“roman”作为文本(衬线)字体,并使用 Helvetica 作为文本无衬线字体。
\documentclass{article}
\usepackage{amsmath,times}
\begin{document}
$2\sin\theta$
% prevailing text font shape: upright (roman)
$2\text{sin}\theta$
\itshape
% prevailing text font shape: slanted/italic Times Roman
$2\text{sin}\theta$
\sffamily\bfseries
% prevailing text font shape: slanted/bold Helvetica
$2\text{sin}\theta$
$2\mathrm{sin}\theta$ % upright math font
$2\textnormal{sin}\theta$ % upright serif font
\end{document}