如何对齐此表格以适合页面宽度?

如何对齐此表格以适合页面宽度?

我想对齐这个表。这是我的代码

\documentclass[a4paper, 12pt]{article}
\usepackage[left=15mm,right=20mm,top=20 mm,bottom=20mm]{geometry}
\usepackage{lipsum}
\usepackage{longtable}
\begin{document}
\lipsum[1]
\begin{longtable}{|p{10.8 cm}|p{6 cm}|}
\hline 
\multicolumn{1}{|c|}{\textbf{\textit{Solve}}}&\multicolumn{1}{|c|}{\textbf{\textit{Result}}} \\
\hline 
 &\\
 &\\
 &\\
 &\\
 &\\
 &\\
&\\
 \hline 
\end{longtable}
\end{document}

在此处输入图片描述

当我更改设置时,如何对齐此表以适合页面宽度geometry?

答案1

文本块的宽度是\textwidth表格的宽度,是单元格的宽度加上2\tabcolsep每个单元格的填充加上\ararryrulewidth每条垂直线的宽度,因此

\documentclass[a4paper, 12pt]{article}
\usepackage[left=15mm,right=20mm,top=20 mm,bottom=20mm]{geometry}
\usepackage{lipsum}
\usepackage{longtable}
\begin{document}
\lipsum[1]
\begin{longtable}{
|p{0.7\dimexpr \textwidth-3\arrayrulewidth-4\tabcolsep\relax}|
 p{0.3\dimexpr \textwidth-3\arrayrulewidth-4\tabcolsep\relax}|
}
\hline 
\multicolumn{1}{|c|}{\textbf{\textit{Solve}}}&\multicolumn{1}{|c|}{\textbf{\textit{Result}}} \\
\hline 
 &\\
 &\\
 &\\
 &\\
 &\\
 &\\
&\\
 \hline 
\end{longtable}

\结束{文档}

答案2

您可以使用该tabularx包自动计算某些列的大小。

使用的基本命令是

\begin{tabularx}{\textwidth}{|X|X|}

该命令创建一个表格,其宽度与文本相同,且有两列。摘自tabularx ( texdoc tanbularx) 手册:

通常,单个表格中的所有 X 列都设置为相同宽度,但是可以让 tabularx 将它们设置为不同的宽度。序言参数{>{\hsize=.5\hsize}X>{\hsize=1.5\hsize}X}指定两列,第二列的宽度将是第一列的三倍。但是,如果您想玩这样的游戏,您应该遵循以下两个规则。

• 确保所有 X 列的宽度总和不变。(在上面的例子中,新宽度的总和仍为默认宽度的两倍,与两个标准 X 列相同。)

• 不要使用跨任何 X 列的 \multicolumn 条目。与大多数规则一样,如果您知道自己在做什么,这些规则可能会被打破。

相关内容