表格大小 \textwidth 和确切的列尺寸(厘米)?

表格大小 \textwidth 和确切的列尺寸(厘米)?

我需要制作具有 /textwidth 宽度且其列的尺寸恰好以厘米为单位的表格。

具体来说 - 桌子宽度:24 厘米,列数(厘米):4.2;7.6;6.4;3.5;2.3

我的文档开始于:

\documentclass{article}
\usepackage{geometry}

\geometry{paper=a4paper, landscape, hmargin=28.5mm, vmargin=20mm} 

这意味着 297mm x 210mm。(但打印长度是 23.99658cm x 16.99757cm wt*?)

这可能吗?我尝试创建基本表格(8x3=24):

\begin{tabular}{ @{} | p{3cm} | p{3cm} | p{3cm} | p{3cm} | p{3cm} | p{3cm} | p{3cm} | p{3cm} | @{}}
\hline
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline
\end{tabular}

但是表格水平溢出到文档的右端......

我也尝试过(8x3=24):

\newcolumntype{L}{>{\hsize=3cm}X}
\begin{tabularx}{\textwidth}{ |L|L|L|L|L|L|L|L| }
...

并且溢出超出了文档范围......

请问有人可以帮忙吗?

答案1

您必须考虑列分隔和规则的宽度。

使用以下代码,如果从规则的中间测量,宽度将如指定的那样。

\documentclass{article}
\usepackage{geometry}

\geometry{paper=a4paper, landscape, textwidth=24cm, vmargin=20mm} 


\begin{document}

\noindent
\begin{tabular}{
  @{\kern-.5\arrayrulewidth}
  |p{\dimexpr4.2cm-2\tabcolsep-.5\arrayrulewidth}
  |p{\dimexpr7.6cm-2\tabcolsep-.5\arrayrulewidth}
  |p{\dimexpr6.4cm-2\tabcolsep-.5\arrayrulewidth}
  |p{\dimexpr3.5cm-2\tabcolsep-.5\arrayrulewidth}
  |p{\dimexpr2.3cm-2\tabcolsep-.5\arrayrulewidth}
  |@{\kern-.5\arrayrulewidth}
}
\hline
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee \\
\hline
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee &
aaa bbb ccc ddd eee \\
\hline
\end{tabular}

\end{document}

如果想要24cm的文本宽度,最好直接指定。

在此处输入图片描述

相关内容