tabularx 中的方程式后面有太多垂直空间

tabularx 中的方程式后面有太多垂直空间

我正在尝试使用 tabularx 将多个编号方程放在同一行,如回答。

最大能量损失 1:

\documentclass{article}
\usepackage{tabularx}
\begin{document}
blah blah text

\noindent\begin{tabularx}{\linewidth}{@{}XX@{}}
\begin{equation}
1+1+2
\end{equation}
&
\begin{equation}
2+2=4
\end{equation}
\end{tabularx}
%
blah blah text
\end{document}

这产生了

这

最大能量损失 2:

\documentclass{article}
\usepackage{tabularx}
\begin{document}
blah blah text

\noindent\begin{tabularx}{\linewidth}{@{}XX@{}}
asdfasfd
&
asfdasdf
\end{tabularx}
%
blah blah text
\end{document}

这产生了

这

MWE 2 没问题,顶部和底部的间距相同。但是 MWE 1 有什么问题?如何才能使 tabularx 环境前后的间距与我通常从公式环境中获得的间距相同?

答案1

为了大幅节省(垂直)空白,您可以将环境放在(宽度为 )的环境equation中。或者,根本不使用环境;而是使用低级代码来显示数学材料、增加计数器并显示方程式编号。minipage\hsizeequationequation

在此处输入图片描述

\documentclass{article}
\usepackage{tabularx}
\begin{document}

\hrule
\noindent%
\begin{tabularx}{\linewidth}{@{}XX@{}}
\begin{minipage}{\hsize}
\begin{equation}
1+1+2
\end{equation}
\end{minipage}
&
\begin{minipage}{\hsize}
\begin{equation}
2+2=4
\end{equation}
\end{minipage}
\end{tabularx}
\hrule

\bigskip
\hrule
\noindent%
\begin{tabularx}{\linewidth}{@{}XX@{}}
\hfill$\displaystyle 1+1=2$\hfill
\refstepcounter{equation}(\theequation)
&
\hfill$\displaystyle 2+2=4$\hfill
\refstepcounter{equation}(\theequation)
\end{tabularx}
\hrule

\bigskip
\hrule
\noindent
\begin{tabularx}{\linewidth}{@{}XX@{}}
asdfasfd & asfdasdf
\end{tabularx}
\hrule

\end{document}

答案2

您可以(本地)将显示上方和下方的间距参数设置为零。

如果您还定义了适当的环境,那就更容易了。如果您需要连续的equation环境(但您不应该),请使用显示的技巧。

\documentclass{article}
\usepackage{amsmath}
\usepackage{tabularx}
\usepackage{environ}

\usepackage{lipsum}% just for the example

\newlength{\savedbdss}
\NewEnviron{multieq}[1]{%
  \[
  \begin{minipage}{\displaywidth}
  \setlength{\savedbdss}{\belowdisplayshortskip}
  \setlength{\abovedisplayshortskip}{0pt}%
  \setlength{\belowdisplayshortskip}{0pt}%
  \begin{tabularx}{\displaywidth}{@{}*{#1}{>{\noindent\vspace*{-\baselineskip}}X}@{}}
  \BODY
  \end{tabularx}
  \vspace{-\belowdisplayskip}
  \vspace{-\savedbdss}
  \end{minipage}
  \]
}

\begin{document}

\lipsum[1][1-4]
\begin{multieq}{2}
\begin{equation}
1+1+2
\end{equation}
&
\begin{equation}
2+2=4
\end{equation}
\end{multieq}
\lipsum[2][1-3]
\begin{multieq}{2}
\begin{equation}
1+1+2
\end{equation}
&
\begin{equation}
2+2=4
\end{equation}
\\[-\savedbdss]
\begin{equation}
1+1+2
\end{equation}
&
\begin{equation}
2+2=4
\end{equation}
\end{multieq}
\lipsum[2][1-3]

\end{document}

在此处输入图片描述

相关内容