我对 LaTeX 还比较陌生,我对\vphantom{E}
这种情况下到底起什么作用以及为什么会产生这种影响感到困惑。
我有一张有 2 列的表格,每行上的项目用点水平分隔。我认为我已经将表格设置为 6.5 英寸宽,项目左右对齐。
这是表格的图片,看起来与预期一致。但是,我想在不使用的情况下减少最后一行后的空白\vspace
。我尝试删除该\vphantom
命令,表格不再填满整个 6.5 英寸。
\newcommand{\award}[2]
{
\multicolumn{2}{c}{#1 \cftdotfill{\cftdotsep} #2}\\
}
\begin{center}
\begin{tabular*}{6.5in}[t]{l@{\extracolsep{\fill}}r}
\award{Text text text text text text text}{2019}
\award{Text text text text text text text Text text text text text text text}{2018-19}
\award{Text text text text text text text Text text text text text text text}{2018}
\vphantom{E}
\end{tabular*}
\end{center}
删除\vphantom{E}
以下结果:
答案1
请尝试以下操作:
\documentclass{report}
\usepackage{geometry}
\newcommand{\award}[2]{#1 \dotfill #2\\}
\begin{document}
\begin{center}
\begin{tabular}{p{5.5in}}
\award{Text text text text text text text}{2019}
\award{Text text text text text text text Text text text text text text text}{2018-19}
\award{Text text text text text text text Text text text text text text text}{2018}
\end{tabular}
\end{center}
\end{document}
为了正确工作,\dotfill
您需要明确定义(多列)单元格宽度,而表格中没有。如果您添加一条假线,例如使用 ~ & ~
(~
不可见字符)或简单地使用&
或使用\vphantom{E}
(通过它您在第一列中定义此表格行的垂直空间,而第二列左侧未定义,这是错误的),表格宽度等于规定的宽度。
我使用,\dotfill
因为您的文档序言是未知的,并且\cftdotfill
在我的文档示例中未定义。
使用以下命令可以获得相同的结果minipage
:
\documentclass{report}
\usepackage{geometry}
\newcommand{\award}[2]{#1 \dotfill #2\\}
\begin{document}
\begin{center}
\begin{minipage}{5.5in}
\award{Text text text text text text text}{2019}
\award{Text text text text text text text Text text text text text text text}{2018-19}
\award{Text text text text text text text Text text text text text text text}{2018}
\end{minipage}
\end{center}
\end{document}