将 displaymath 方程式包裹在周围的文本中

将 displaymath 方程式包裹在周围的文本中

我不太理解段落中 displaymath 方程式的缩进/段落构建/无论发生什么(我的理解有限......)的行为。当在段落中放置一个没有任何空行的方程式时,我在方程式后没有得到任何缩进,但方程式前的行也没有填充,所以这不是“真正的”段落。我希望获得类似于段落内浮点数([h] 说明符)的行为。

梅威瑟:

\documentclass{scrartcl}

\usepackage{amsmath}

\begin{document}
    \parfillskip=0pt
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit 
    \begin{gather*}
        x = x - 1
    \end{gather*}
    anim id est laborum.
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit anim id est laborum.
\end{document}

通过对文本进行一些微调(我在等式后面添加了“anim id est laborum。”,我几乎可以填满等式前面的行,同时\parfillskip=0pt去掉了小空格。 示例1 然而,这显然也毁掉了最后一行。我可以\parfillskip在方程之后将其恢复为原始值,但这是最好的方法。这种行为背后的原因是什么?为什么我们会得到这些“半”段落?请注意,在我的实际示例中,我为方程使用了标签,因此它们不必绝对位于源中提到它们的位置。

答案1

方程式不是浮点数,它们总是出现在文本中输入的位置。上面的文本被设置为“部分段落”,强制换行,\parfillskip 下面的文本被设置为连续文本(因此没有段落缩进),除非前面有一个空白行来开始一个新段落。

对于方程式,这是内置于 tex 程序中的,但是 LaTeX 通过其所有显示结构模拟相同的行为,例如enumerate将在段落内设置的列表,而没有后续段落缩进。


这是一个相当不寻常的设置,但如果您确实希望等式不干扰您可以使用的换行符\vadjust,但您可能需要稍微调整垂直间距,因为您会失去正常的垂直数学间距调整。

\documentclass{scrartcl}

\usepackage{amsmath}

\begin{document}

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit 
    \begin{gather*}
        x = x - 1
    \end{gather*}
    anim id est laborum.
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit anim id est laborum.


\bigskip


    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit%
    \vadjust{\begin{gather*}
        x = x - 1
    \end{gather*}}
    anim id est laborum.
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit anim id est laborum.
\end{document}

在此处输入图片描述


或者,如果您真的想将所有显示数学构造视为浮点数,那么您可以声明一个新的浮点类型(这是一些低级命令,或者像这里使用包的单个声明一样)float。这声明了一个eqn实际上并未使用的新计数器(但可以与\caption我在这里假设您将它与编号方程一起使用(所以我没有使用gathergather*我声明默认位置是[htbp]如此特别它包括与和的h默认值不同。figuretable

在此处输入图片描述

相关内容