如何在 tabularx 中使用 vfil

如何在 tabularx 中使用 vfil

以下 mwe 中的s\vfil似乎不起作用:

\documentclass{article}

\usepackage{tabularx}
\usepackage{lipsum}


\begin{document}

\begin{tabularx}{\linewidth}{XX}
\lipsum[1] & a \vfil b \vfil c\\
\end{tabularx}

\end{document}

有没有办法让它工作?我想要的非常类似于如何在表格环境中使用 vfill 的等效功能?除了我不知道第 1 列的高度是多少(但它始终至少是没有 的第 2 列的高度\vfil)。我想我可以将第 1 列的高度存储在宏中,但这是最好的方法吗?也欢迎避免使用 tabular(x) 的解决方案。

答案1

您需要测量左边的盒子。

\documentclass{article}

\usepackage{lipsum}

\newsavebox{\doubleleftbox}
\newenvironment{doublebox}
 {%
  \begin{flushleft}
  \begin{lrbox}{\doubleleftbox}
  \begin{minipage}[b]{\dimexpr0.5\columnwidth-\tabcolsep}\strut\ignorespaces
 }
 {\unskip\strut\end{minipage}\end{flushleft}}

\newcommand{\changeside}{%
  \unskip\strut\end{minipage}
  \end{lrbox}
  \usebox{\doubleleftbox}\hfill
  \begin{minipage}[b][\ht\doubleleftbox][s]{\dimexpr0.5\columnwidth-\tabcolsep}
  \strut\ignorespaces
}

\begin{document}

\lipsum[3][1-3]

\begin{doublebox}
\lipsum[1]
\changeside
\lipsum[2][1-2]\vfil \lipsum[2][3-4]\vfil \lipsum[2][5-6]
\end{doublebox}

\lipsum[4][1-3]

\end{document}

在此处输入图片描述

相关内容