我有多页表格,所以我开始使用longtable
。我的 LaTeX 输入如下所示。即使我对每一列使用相同的代码,也只有第一列是左对齐的。
\renewcommand*{\arraystretch}{1}
\begin{center}
\small % Switch from 12pt to 11pt; otherwise, table won't fit
\setlength\LTleft{0pt} % default: \parindent
\setlength\LTright{0pt} % default: \fill
\begin{longtable}{@{\extracolsep{\fill}}|l|l|l|l|l|l|}
\caption[First Part Optimization Results]{First Part Optimization Results}
\label{grid_mlmmh} \\
\hline \multicolumn{6}{|c|}{Initial Points} \\ \hline
\endfirsthead
\multicolumn{6}{c}%
{{\bfseries \tablename\ \thetable{} -- continued from previous page}} \\
\hline \multicolumn{1}{|l|}{Angle Thk} &
\multicolumn{1}{l|}{Angle Ht} &
\multicolumn{1}{l|}{Base Thk} &
\multicolumn{1}{l|}{Bracket Thk} &
\multicolumn{1}{l|}{Beam Thk} &
\multicolumn{1}{l|}{Maximum RF} \\ \hline
\endhead
\hline \multicolumn{6}{r}{Continued on next page} \\
\endfoot
\endlastfoot
% \hline
Angle Thk & Angle Ht & Base Thk & Bracket Thk & Beam Thk & Maximum RF \\ \hline
2 & 10 & 4 & 8 & 2 & 41212 \\ \hline
2 & 9 & 6 & 1 & 8 & 51047 \\ \hline
4 & 12 & 6 & 3 & 7 & 91721 \\ \hline
7 & 14 & 3 & 2 & 6 & 135734 \\ \hline
未完全右对齐,但其余列有空间。标题和数字不垂直。
感谢帮助。
答案1
使用 package 可以将数字对齐siunitx
。这样表格的头部通常就会居中。此外,下面的示例使用 packagebooktabs
来展示如何仅使用几条水平线来绘制表格。
该示例已删除了一些longtable
内容,因为不需要显示与的对齐siunitx
。
表格标题被格式化为两行,因为注释说表格的宽度是一个问题。
\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}
\begin{document}
\newcommand*{\cell}[1]{\begin{tabular}[b]{@{}c@{}}#1\end{tabular}}
\begin{tabular}{
S[table-format=1.0]
S[table-format=2.0]
S[table-format=1.0]
S[table-format=1.0]
S[table-format=1.0]
S[table-format=6.0]
}
\toprule
%\multicolumn{6}{c}{Initial Points} \\
%\midrule
{\cell{Angle\\Thk}} &
{\cell{Angle\\Ht}} &
{\cell{Base\\Thk}} &
{\cell{Bracket\\Thk}} &
{\cell{Beam\\Thk}} &
{\cell{Maximum\\RF}} \\
\midrule
2 & 10 & 4 & 8 & 2 & 41212 \\
2 & 9 & 6 & 1 & 8 & 51047 \\
4 & 12 & 6 & 3 & 7 & 91721 \\
7 & 14 & 3 & 2 & 6 & 135734 \\
\bottomrule
\end{tabular}
\end{document}