有没有办法定义一个\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}