
我想對齊這張桌子。這是我的程式碼
\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 條目。與大多數規則一樣,如果您知道自己在做什麼,這些規則可能會被打破。