这两者有什么区别?
http://en.wikibooks.org/wiki/TeX/abovedisplayskip
http://en.wikibooks.org/wiki/TeX/abovedisplayshortskip
我不知道为什么,但它似乎工作得异常。
\setlength{\abovedisplayskip}{5pt}
\setlength{\belowdisplayskip}{50pt}
\setlength{\abovedisplayshortskip}{2pt}
\setlength{\belowdisplayshortskip}{2pt}
\begin{equation}
u_{i,t} = u_{i,t-1} + v_t
\end{equation}
\begin{equation}
u_{i,t-1} = u_{i,t-2} + v_{t-1}
\end{equation}
\begin{equation}
\Delta u_{it} = u_{i,t} - u_{i,t-1} = u_{i,t-1} + v_t - u_{i,t-1} =
v_t
\end{equation}
那么为什么它看起来像这样:
我期望短显示跳过位于连续公式之间,常规跳过位于系列中第一个和最后一个公式之前和之后,或类似情况。无论如何,它到底为什么要这样做?
答案1
其他人已经很好地描述了选择“短”跳跃的情况;至于为什么,这很简单:目的是避免文本和居中方程式之间存在较大的间隙。
如何避免方程式前后的间距不平衡?答案很简单:使用数学它提供了许多环境,以适应多个方程或对齐。例如,您的案例研究应输入为
\begin{gather}
u_{i,t} = u_{i,t-1} + v_t \\
u_{i,t-1} = u_{i,t-2} + v_{t-1} \\
\Delta u_{it} = u_{i,t} - u_{i,t-1} = u_{i,t-1} + v_t - u_{i,t-1} =
v_t
\end{gather}
这样可以避免“不平衡”,还可以防止出现错误的分页符。默认情况下数学永远不会允许显示环境跨页面中断,但可以在最终修订时使用适当放置的\displaybreak
命令在本地覆盖此行为。
答案2
答案3
当上方或下方的线(视情况而定)“短”时,使用这些short
版本。现在,剩下的问题是“短”是什么。引用优秀的TeX 按主题分类
如果没有
\leqno
左方程编号,并且显示屏上方段落的最后一行足够短,显示屏可以稍微升高一点而不会太靠近该行,则采用“短”粘连变体。为了决定这一点,前一行的有效宽度保存在中。该值是在扫描显示屏\predisplaysize
开口后立即计算的,与上面解释的和一起计算。$$
\displaywidth
\displayindent
因此,当段落文本和数学模式材料之间存在视觉“重叠”时,就会使用短跳过。
答案4
其他答案解释了发生了什么。下面是一个可以尝试的小例子。规则模拟段落第一行/最后一行的长度。可选参数允许您设置实际长度。
\documentclass[%
% fleqn% be careful, activating this deactivats shortskips
]{article}
\newcommand{\debugrule}[1][9]{%
\noindent \rule{.#1\linewidth}{10pt}
}
\setlength{\textwidth}{15em}
\begin{document}
\setlength\abovedisplayshortskip{0pt}
\setlength\belowdisplayshortskip{0pt}
\setlength\abovedisplayskip{50pt}
\setlength\belowdisplayskip{12pt}
\debugrule[1]
\[ \int \]
\debugrule[1]
\debugrule[1]
\[ \int \]
\debugrule[6]
\debugrule[5]
\[ \int \]
\debugrule
\debugrule[33]
\[ \int \]
\debugrule
\debugrule[34]
\[ \int \]
\debugrule
\end{document}