我有一张如下所示的表格:
\documentclass[12pt,a4paper]{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{rl}
\multicolumn{2}{c}{heading} \\
\toprule
string & much longer string long \\
string & much longer string long \\
string & much longer string long \\
string & much longer string long \\
\end{tabular}
\end{document}
“heading” 看起来只是第二列的标题。我希望它位于两列之间的分隔线中央,这样就可以看出事实并非如此。关于如何排版,也欢迎提出其他意见
答案1
两列之间的空间通常由\tabcolsep
第一列的右侧和第二列的左侧组成\tabcolsep
。第一列已经右对齐,\rlap
打印到右侧,\kern\tabcolsep
移动到两列之间的位置,并使\makebox[0pt]
文本居中,不占用 TeX 的空间。
\documentclass[12pt,a4paper]{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{rl}
\rlap{\kern\tabcolsep\makebox[0pt]{heading}} \\
% variant:
% \rlap{\makebox[2\tabcolsep]{heading}} \\
\toprule
string & much longer string long \\
string & much longer string long \\
string & much longer string long \\
string & much longer string long \\
\end{tabular}
\end{document}
选择:
- 根据具体情况,表格可能不需要“标题”,因为它可以放入表格标题中。