加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[转载]LaTeX技巧393:如何调整公式间距即公式和正文的间距

(2010-11-13 10:21:45)
标签:

转载

最近,有些网友询问如何修改公式和文本的距离,总是觉得公式和文本的距离太远了。
通常两种情况:

第一,我们输入代码的问题。即我们输入公式时,自动自己空行了,会导致间距扩大。如:
documentclass{article}
usepackage{type1cm}
usepackage[fleqn]{amsmath}
begin{document}
the  text 

begin{equation}
a+b=c
end{equation}


the text
begin{equation}
a+b=c
end{equation}
end{document}
显示效果为:
http://s8/middle/5e16f1770752ee1a42ee7&690

正确的代码输入才能保证其美观。

第二,的确是系统提供的公式到文本的间距过大。我以book类为例。公式和文本之间的间距由abovedisplayshortskip 和 belowdisplayshortskip 两个距离来控制的。book类10号字体的定义为:
renewcommandnormalsize{%
   @setfontsizenormalsize@xpt@xiipt
   abovedisplayskip 10p@ @plus2p@ @minus5p@
   abovedisplayshortskip z@ @plus3p@
   belowdisplayshortskip 6p@ @plus3p@ @minus3p@
   belowdisplayskip abovedisplayskip
   let@listi@listI}
normalsize

所以我们可以通过修改这些参数来控制文本和公式的间距:
如下:

{setlengthabovedisplayskip{1pt plus 3pt minus 7pt}

setlengthbelowdisplayskip{1pt plus 3pt minus 7pt}
... (Equation(s)) ...
 }
注意 { }的作用。
修改后的显示效果为:
http://s2/middle/5e16f177493d4f2ce4091&690
这样修改只能起到局部的作用。
我们可以在导言区重定义normalsize的长度,即可修改文本和公式的间距如:
makeatletter
renewcommandnormalsize{%
   @setfontsizenormalsize@xpt@xiipt
   abovedisplayskip 1p@ @plus2p@ @minus5p@
   abovedisplayshortskip z@ @plus3p@
   belowdisplayshortskip 6p@ @plus3p@ @minus3p@
   belowdisplayskip abovedisplayskip
   let@listi@listI}
makeatother
显示效果如图:
http://s14/middle/5e16f177493d51151b3dd&690
这个值修改得比较小,为了演示效果,大家可根据自己的需要来调整其大小。

0

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有