考虑这个例子:
\documentclass[varwidth]{standalone}
\begin{document}
\begin{tabular}{lc}
A11 & A12\\
A21 & A22
\end{tabular}
\setlength{\tabcolsep}{0pt}
\begin{tabular}{lc}
B11 & B12\\
B21 & B22
\end{tabular}
%\setlength{\tabcolsep}{??}
\begin{tabular}{lc}
C11 & C12\\
C21 & C22
\end{tabular}
\end{document}
输出为
我希望\tabcolsep
C 表中的列分隔与 A 表中的列分隔相同。我应该在行中提供什么值\setlength{\tabcolsep}{??}
答案1
通常,atabular
位于周围环境中,例如,table
设置center
是\tabcolsep
本地的。或者,如下所示,您可以添加一个额外的{}
组来安排它。
\documentclass[varwidth]{standalone}
\begin{document}
\begin{tabular}{lc}
A11 & A12\\
A21 & A22
\end{tabular}
{\setlength{\tabcolsep}{0pt}
\begin{tabular}{lc}
B11 & B12\\
B21 & B22
\end{tabular}}
%\setlength{\tabcolsep}{??}
\begin{tabular}{lc}
C11 & C12\\
C21 & C22
\end{tabular}
\end{document}
答案2
正如 Ulrike Fischer 在评论中指出的那样,您可以使用或\tabcolsep
轻松评估 的尺寸。您会发现它默认为 6.0pt。\the\tabcolsep
\showthe\tabcolsep
如果您只想针对一个tabular
环境更改它,我建议您\tabcolsep
在将其设置为零之前将其值存储在其他宏中。然后,您将能够在稍后恢复它,而根本不需要知道实际值。
\documentclass[varwidth]{standalone}
\begin{document}
\begin{tabular}{lc}
A11 & A12\\
A21 & A22
\end{tabular}
\newlength{\oldtabcolsep}
\setlength{\oldtabcolsep}{\tabcolsep}
\setlength{\tabcolsep}{0pt}
\begin{tabular}{lc}
B11 & B12\\
B21 & B22
\end{tabular}
\setlength{\tabcolsep}{\oldtabcolsep}
\begin{tabular}{lc}
C11 & C12\\
C21 & C22
\end{tabular}
\end{document}
抑制列之间间隙的另一种方法是将@{}
参数放置在列定义之间:
\begin{tabular}{@{} l @{} c @{}}
B11 & B12\\
B21 & B22
\end{tabular}