我正在尝试将表格放在文档的页眉中。在此文档中,页眉的宽度大于文本正文。页眉的宽度必须正好是 183 毫米,其中有一个宽度为 183 毫米的表格,列的宽度为 70、93 和 20 毫米。因此,我将文档设置为
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyheadoffset[L]{0.9cm} %header offset
\fancyheadoffset[R]{0.9cm} %header offset
使用这些设置(以及我省略的其他设置),标题的宽度为 183 毫米(正确!)
然后我尝试将表格放在标题中
\fancyhead[C]{
\begin{tabular}{|p{70mm}|p{93mm}|p{20mm}|}
\hline
first & second & third\\
\hline
\end{tabular}
}
这会导致表格的单元格比我使用的值更宽(大约宽 4 毫米),并且我收到过满警告。例如,为了清楚起见,第一列的宽度是 74 毫米,而不是 70 毫米。我认为差异是由于p{70mm}
我设置了文本宽度而不是列宽度,这导致两个边距都有小偏移(实际上列线和第一个字母之间有一点空间)。
有没有办法将列宽设置为两条线之间的距离?否则,我需要将列宽减少几毫米,导致工作不太精确。
谢谢!
答案1
您需要2\tabcolsep
像这样从每一列中减去:
\begin{tabular}{|p{\dimexpr70mm-2\tabcolsep}|p{\dimexpr93mm-2\tabcolsep}|p{\dimexpr20mm-2\tabcolsep}|}
\hline
first & second & third\\
\hline
\end{tabular}
但是此方法会在第一列和最后一列之前和之后分别留下一些空间。如果要删除该空间,请使用以下列规范:
{|@{}p{\dimexpr70mm-\tabcolsep}|p{\dimexpr93mm-2\tabcolsep}|p{\dimexpr20mm-\tabcolsep}@{}|}