如何减少数学符号上方和下方的间距?

如何减少数学符号上方和下方的间距?

如何减少数学符号上方和下方的间距\sum
例如,输入

f(z) = \sum_{n=0}^{\infty} a_n(z-a)^n \text{ where } a_n 
     = \frac{1}{2\pi i}\oint_\gamma \frac{f(\xi)}{(\xi - a)^{n+1}}\, d\xi

在我的 TeX 发行版(MiKTeX)上呈现为:

在此处输入图片描述

而在 MathML 上相同的代码如下所示:

在此处输入图片描述

符号上方和下方的空间\sum(第一张图片)相当难看^^
有没有办法通过\renewcommand或某些包来减少它?
(顺便说一下,可以拉伸符号\infty以使其像第二张图片一样更“紧凑”?)

答案1

Donald E. Knuth 的《The TeXbook》附录 G《从公式生成框》指定了数学运算符与上标和下标之间的间距公式:

数学运算符和上标之间的空格:max(ξ₉, ξ₁₁ -depth(superscript))

数学运算符和下标之间的空格:max((ξ₁₀, ξ₁₂ - height(subscript))

第一个参数 ξ₉ 或 ξ₁₀ 确保存在最小距离。第二个参数 ξ₁₁ 或 ξ₁₂ 设置上标或下标基线的距离;这允许索引对齐,除非索引的深度/高度太大。

ξₙ 是第三个数学字体的第 n 个字体尺寸参数;取决于当前数学样式,数学字体是\textfont3\scriptfont3\scriptscriptfont3

下面的示例使用 TeX 的常规设置,然后将参数设置为零以显示最小化的距离。

\documentclass{article}
\begin{document}
\setbox0=\hbox{$\relax$}% trigger math font setup
\typeout{xi_9: \the\fontdimen9\textfont3}
\typeout{xi_11: \the\fontdimen11\textfont3}
\typeout{xi_10: \the\fontdimen10\textfont3}
\typeout{xi_12: \the\fontdimen12\textfont3}
\[\sum_{n=0}^{m} \sum_{n}^{g}\]
\fontdimen9\textfont3=0pt
\fontdimen11\textfont3=0pt
\fontdimen10\textfont3=0pt
\fontdimen12\textfont3=0pt
\[\sum_{n=0}^{m} \sum_{n}^{g}\]
\end{document}

结果

  • 如果同一条线上有多个操作员,则第二个参数不应减少太多,以避免指标出现严重的错位。

  • 第一个参数不应太小,以避免索引接触操作符(取决于使用的字体和操作符字形)。

相关内容