\tabcolsep 的默认值

\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}

输出为

在此处输入图片描述

我希望\tabcolsepC 表中的列分隔与 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}

相关内容