如何防止内联数学方程被拉伸?

如何防止内联数学方程被拉伸?

我正在处理一个多列文档,在其中我写了一组方程式,而我的 tex 文件正在生成如下拉伸的方程式

在此处输入图片描述

$(\int\limits_{-\infty}^\infty e^{-ax^2 + bx + c} =\sqrt{\dfrac{\pi}{a}} e^{b^2/4a + c})$

方程的长度正好是列的宽度。这样方程就变长了。

我没有最小工作示例,因为我已经丢弃了原始文件并且无法重现发生时的情况,但是当方程式像上面那样被拉伸时,有没有一种通用的方法来处理?

答案1

TeX 本身为此提供了一个简单的机制 - 只需将{...}数学表达式(在美元内)放在不应被破坏或拉伸的位置。

示例输出

\documentclass[twocolumn]{article}

\usepackage{amsmath}

\setlength\parindent{0pt}

\begin{document}

\emph{Original form}

aaaaaa aaaaaa
$(\int\limits_{-\infty}^\infty e^{-ax^2 + bx + c}
=\sqrt{\dfrac{\pi}{a}} e^{b^2/4a + c})$
aaaaaa aaaaa aaaaa

\bigskip
\emph{New version}

aaaaaa aaaaaa
${(\int\limits_{-\infty}^\infty e^{-ax^2 + bx + c}
=\sqrt{\dfrac{\pi}{a}} e^{b^2/4a + c})}$
aaaaaa aaaaa aaaaa

\end{document}

在这个例子中,这是否是好的风格是另一回事。通常,您应该准备将较大的数学表达式显示出来,特别是当文本中的间距不好时。

答案2

\int\limits在内联数学公式中使用和并不是好的排版习惯\dfrac。我也会使用\exp(....)notation 而不是e^{....}notation,并且我会使用内联分数符号而不是\frac(更不用说 了\dfrac。我确信您的读者会同意。:-)

我尝试使用文档类选项twocolumn并用不可中断的字母组合包围公式来近似解决您提到的窄列问题(以及相关的拉伸问题)。请注意,这\allowbreak可用于向 TeX 指示应考虑哪些额外的换行符可能性。不幸的是,您的原始公式实际上只允许一种内部换行符可能性,这不足以避免严重的过度拉伸。

在此处输入图片描述

\documentclass[twocolumn]{article}
\usepackage{amsmath} % for "\dfrac" macro
\setlength\parindent{0pt}
\begin{document}
\emph{Original form}

aaaaaa aaaaaa  
$(\int\limits_{-\infty}^\infty e^{-ax^2 + bx + c} 
=\sqrt{\dfrac{\pi}{a}} e^{b^2/4a + c})$ 
aaaaaa aaaaa aaaaa

\bigskip
\emph{Alternative form}

aaaaaa aaaaaa  
$\bigl(\int_{-\infty}^\infty \exp(-ax^2 + bx + c) 
=\allowbreak \sqrt{\pi/a}\cdot 
 \allowbreak \exp(b^2/4a + c)\bigr)$  
aaaaa aaaaa aaaaa
\end{document}

答案3

如果你有这么糟糕的线路,以下是:

$(\int\limits_{-\infty}^\infty e^{-ax^2 + bx + c} 
=\sqrt{\dfrac{\pi}{a}} e^{b^2/4a + c})$\hfill

至少将不需要的空格移动到行尾。

相关内容