\intertext 和 \shortintertext 之间的垂直间距命令

\intertext 和 \shortintertext 之间的垂直间距命令

有没有办法定义一个\notsoshortintertext带有两个参数的命令来定义其前后的垂直空间?

我遇到的问题是,\intertext在特定页面上, 太宽,导致分页效果不佳。而 ,\shorintertext我得到的是未满的垂直框。因此,我想调整该点的垂直空间。我试图找到 的定义\shortintertext,但无法理解 mathtools.dtx 中相当神秘的定义。

答案1

如果没有间距仍然太多,则可以使用负间距。

\documentclass{article}
\usepackage{mathtools}

\MHInternalSyntaxOn
\newcommand{\adjintertext}[3]% #1=above skip, #2=below skip, #3=text
{\ifvmode\else\\\@empty\fi
  \noalign{%
    %\penalty\postdisplaypenalty\vskip\belowdisplayskip
    \vskip-\lineskiplimit      % CCS
    \vskip\normallineskiplimit % CCS
    \vskip#1
     \vbox{\normalbaselines
       \ifdim
         \ifdim\@totalleftmargin=\z@
           \linewidth
         \else
           -\maxdimen
         \fi
       =\columnwidth
      \else \parshape\@ne \@totalleftmargin \linewidth
      \fi
      \noindent#3\par}%
    %\penalty\predisplaypenalty\vskip\abovedisplayskip%
    \vskip-\lineskiplimit      % CCS
    \vskip\normallineskiplimit % CCS
    \vskip#2
 }}%
\MHInternalSyntaxOff

\begin{document}
\begin{align}
x &= a\\
\adjintertext{0pt}{0pt}{no spacing}
y &= b\\
\adjintertext{\baselineskip}{\baselineskip}{big spacing}
z &= c
\end{align}
\end{document}

可变间距

相关内容