第一,我们输入代码的问题。即我们输入公式时,自动自己空行了,会导致间距扩大。如:

\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类为例。公式和文本之间的间距由\abovedisplayshortskipbelowdisplayshortskip 两个距离来控制的。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

显示效果如图:

这个值修改得比较小,为了演示效果,大家可根据自己的需要来调整其大小。

点赞(21)

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部