第一,我们输入代码的问题。即我们输入公式时,自动自己空行了,会导致间距扩大。如:
\documentclass{article}
\usepackage{type1cm}
\usepackage[fleqn]{amsmath}
\begin{document}
thetext
\begin{equation}
a+b=c
\end{equation}
the text
\begin{equation}
a+b=c
\end{equation}
\end{document}
显示效果为:
正确的代码输入才能保证其美观。
第二,的确是系统提供的公式到文本的间距过大。我以book类为例。公式和文本之间的间距由\abovedisplayshortskip
和 belowdisplayshortskip
两个距离来控制的。book类10号字体的定义为:
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xiipt
\abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
\abovedisplayshortskip \z@ \@plus3\p@
\belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
\belowdisplayskip \abovedisplayskip
\let\@listi\@listI}
\normalsize
所以我们可以通过修改这些参数来控制文本和公式的间距:
如下:
{\setlength\abovedisplayskip{1pt plus 3pt minus 7pt}
\setlength\belowdisplayskip{1pt plus 3pt minus 7pt}... (Equation(s)) ... [object Object]}
注意 { }
的作用。
修改后的显示效果为:
这样修改只能起到局部的作用。
我们可以在导言区重定义normalsize的长度,即可修改文本和公式的间距如:
\makeatletter
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xiipt
\abovedisplayskip 1\p@ \@plus2\p@ \@minus5\p@
\abovedisplayshortskip \z@ \@plus3\p@
\belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
\belowdisplayskip \abovedisplayskip
\let\@listi\@listI}
\makeatother
显示效果如图:
这个值修改得比较小,为了演示效果,大家可根据自己的需要来调整其大小。
发表评论 取消回复