关于分隔符的大小

关于分隔符的大小

我目前正在用 LaTeX 写土木工程论文。我认为 LaTeX 非常好。我现在正在慢慢远离 Microsoft Word。LaTeX 对我来说很好,因为我的论文(非线性结构动力学)最终可能包含一千多个方程式。

我现在只面临一个问题。

考虑以下带有分隔符的分数。

\left( \frac{a}{b} \right)

到目前为止,该分数确实没有问题。分隔符会自动调整大小。

现在,考虑以下带有分隔符的“复杂”分数:

\left( \frac{\dfrac{a}{b}}{\dfrac{c}{d}} \right)

同样,这个“复杂”的分数没有问题,因为分隔符会自动调整大小。

现在,问题来了。考虑以下带有分隔符的“复杂”分数:

\left( \frac{a}{\dfrac{c}{d}} \right)

结果是分隔符会调整大小,但分子区域内会有额外的“垂直空白”。这是因为分子只是一个“变量”,而分母是“displaystyle”字体大小的另一个分数。因此,它们有不同的“大小”。我有意让分母的字体大小更大,因为我试图在显示模式下显示方程式。(如果分母是文本样式的字体大小,那么分子中的“垂直空白”就会更少,但问题仍然存在。我真的希望分母是 displaystyle 字体大小。)

如果可能的话,我希望分隔符能够调整大小,但只能调整到复杂分数的“实际大小”。在 MathType 中,这个问题可以通过“格式”菜单中的“栅栏对齐”命令来解决,其中分隔符的大小精确调整到复杂分数的大小。

有时,手动调整大小命令 \big, ... \Bigg 命令可以提供帮助,但是当我有一个“复杂-复杂-复杂”分数时,即使是最大的 \Bigg 命令也不再有帮助。

代码示例的输出:

分隔符

我一直在网上寻求帮助,但还没有找到解决办法。

答案1

您可以使用\vcenter来使复数分数居中:

\left( \vcenter{\hbox{$\displaystyle\frac{a}{\dfrac{c}{d}}$}} \right)

但这样分数线将不会与表达式的其余部分对齐。TeX 会尝试将分数线和分隔符都置于表达式的中心水平轴上,这意味着如果分子和分母的垂直尺寸不同,最终会留下一些空白。 \vcenter“修复”了这个问题,方法是强制分数根据其实际高度居中,而不是在分数线上居中。

答案2

您需要在分数示例中使用某种视觉提示,以表明其数学表达式的含义:由于 / 不具有结合性,因此 a/(b/c) 和 (a/b)/c 的含义不同,分别具有范式 (ac)/b 和 a/(bc)。

我更喜欢使用您描述的手动调整大小:最小的表达式位于最里面。您观察到的行为还提供了视觉提示:与周围表达式最对齐的水平规则是最外面的除法运算符。最明确的方法是添加额外的括号。Jan 解决了您的排版问题,但我认为代价是使表达式完全模棱两可。

答案3

Knuth 在 TeXbook 中给出了这个问题的答案,即有时,复数分数不是一个好主意,你应该改用内联形式 a/b。这似乎就是其中一种情况,尽管我知道你的实际等式可能不适合这种改变。一种可能性是,你可以为分母引入新的符号(例如 d),而不是写成

\[\frac{x}{\dfrac{a}{b}},\]

你可以写

\[\frac{x}{d}, \text{ where } d = \frac{a}{b}.\]

简而言之,这不是排版问题,而是构图问题。

答案4

在搜索中遇到了这个问题,并想指出 TeXbook 的另一个改编版本:

$$
  \left(\displaystyle{\mathstrut a\over\mathstrut  b}
    \above1pt\displaystyle{\mathstrut c\over\mathstrut d}\right)
  \quad
  \left(a\over c/d\right)
$$
\bye

堆栈

\above1pt使得中间的规则比其他两个规则更厚。

相关内容