我使用的是 amsmath 和标准数学包,没什么特别的。这是我的表达式:
\begin{equation*}
e^{i \int \!dt\,\frac{1}{2}m\dot x^2}
\end{equation*}
我对积分符号太小感到不满意:
当我写作时
\begin{equation*}
e^{i \big\int \!dt\,\frac{1}{2}m\dot x^2}
\end{equation*}
它看起来完全正确:
但是,当我使用时,\big
我收到编译器警告,我无法忍受它。我需要它在没有任何警告的情况下进行编译。错误是:
Missing delimiter (. inserted). ...ta t}\right)^{\!\frac{N}{2}}e^{i \big\int
我尝试了所有空格和等的组合\big{\int}
,但无法消除编译器警告。如何才能使我的积分在指数上稍微大一点而不会出现错误?谢谢!!!
答案1
答案2
我同意上标中的积分很小,但我认为选项\textstyle
太大了。为了找到一个折衷方案,我修改了 exscale.sty 中的声明,使其
\DeclareFontShape{OMX}{cmex}{m}{n}{%
<-7>sfixed * cmex7
<7-8>sfixed * cmex8
<9> cmex9
<10> <10.95> <12> <14.4> <17.28> <20.74> <24.88>cmex10
}{}
比较两个版本的输出(包括 scriptscriptstyle 中的积分)
Amsmath 尺寸:
\DeclareFontShape
尺寸:
这是计算机现代数学字体所特有的(因为“cmex”),但也会影响从数学扩展字体中获取的其他数学部分。一个值得注意的影响是默认规则厚度(来自扩展字体的 fontdimen 8)。可以在分数上看到这种影响。
答案3
这里发生了几件事。首先\big
只能用于分隔符,而不能用于运算符,这是导致错误的根源。
其次,较小的积分符号是加载包的结果amsmath
。如果没有它,您将得到如第二个示例所示的积分符号。我不完全确定amsmath
默认行为是否有缺陷。您需要执行类似以下操作才能获得积分的正确间距和大小:
e^{ i\mathop {\textstyle\int} \!dt\,\frac{1}{2}m\dot x^2}
我很好奇引擎盖下发生了什么,导致行为\int
有所不同,这确实值得进一步研究。
编辑:忽略上面的“解决方案”。如果您想要默认行为,则可cmex10
在加载时指定选项amsmath
:
\usepackage[cmex10]{amsmath}