表格中的 \vspace*{\fill} 类似物(LaTeX)

表格中的 \vspace*{\fill} 类似物(LaTeX)

我有一张桌子,说

\begin{tabular}{|p{1cm}|p{10cm}|}
  \hline
  t ... b & text with some number of lines 
\\
  \hline
\end{tabular}

在右侧(大)条目中,我有一些行数(但最初不确定)的文本(例如,一些引文)。在左侧条目中,我希望分别在条目顶部看到“t”,在底部看到“b”。

因此,我想组织一些模拟\vspace*{\fill}(移动公共页面的文本),但对于单个表格条目,其高度未知并由邻居条目的文本决定。

\vspace*{\fill}放在“t”和“b”之间,不会产生影响,因为(我的假设)LaTeX 不是处于垂直模式。

有人可以提供建议或者参考讨论此类问题的 tex.stackexchange 页面吗?

答案1

您可以使用套印:

\documentclass{article}
\usepackage{mwe}
\begin{document}
\begin{tabular}{|p{1cm}|p{10cm}|}
  \hline
  t & \blindtext\\[-\normalbaselineskip]% jump back one text line
  \hfill\dots\ b & \\ % and overprint the last line
  \hline
\end{tabular}
\end{document}

在此处输入图片描述

注意:如果右列最后一行没有正常文本行的高度,则此解决方案失败。

答案2

有些参数是硬连线的,但总比没有好。这个想法是测量右列的高度。

\documentclass{article}
\usepackage{array}

\usepackage{lipsum} % just for the example

\newcommand{\funnyrow}[3]{%
  % #1 = text at the top in the left column
  % #2 = text at the bottom in the left column
  % #3 = text in the right column
  \sbox0{\parbox[b]{10cm}{#3}}%
  \parbox[b][\ht0][s]{1cm}{#1\vfill\raggedleft#2}&
  #3
}

\begin{document}

\begin{center}
\begin{tabular}{|b{1cm}|b{10cm}|}
\hline
\funnyrow{t}{\dots b}{
  \lipsum*[2]
}\\
\hline
\end{tabular}
\end{center}

\end{document}

在此处输入图片描述

相关内容