我想知道在相乘的函数之间留出空格的最佳做法是什么。
这是我遇到的一个具体问题。我想要渲染\cos{x} u(x)
,它表示两个函数\cos{x}
和的乘积u(x)
。但是,直接渲染此表达式会产生一个结果,在x
和之间没有足够的空间u(x)
,如下所示\cos{x u(x)}
:
为了避免这个问题,我实际上一直u
用\mathop
来包围函数名称\cos{x} \mathop{u}(x)
。这在 前面留了一个适当的空格u(x)
:
然而,我刚刚了解到,用 围绕单个字母会使\mathop
基线移动,正如讨论的那样这里。(您可以看到u
在上面的渲染中向上移动了。)使用\operatorname
而不是\mathop
可以避免这个问题,但是对于单字母函数名称,它使用直立字体而不是斜体字体。
显然,最简单的解决方案是明确地放置一个空格\cos{x}\,u(x)
,但我不想扰乱 TeX 的自动间距方案,正如令人信服的论证。这里有没有更好的方法告诉 TeX 两个函数相乘之间应该有一个空格?
答案1
如果该参数仅由单个对象组成,则TeX 原始命令会垂直居中该参数。这就是将 置于数学轴中心的\mathop
原因。如果 的参数有多个对象,则该参数位于基线。\mathop{u}
u
\mathop
您可以定义
\def\op#1{\mathop{{}#1}}
并使用
\cos x \op u(x)