第一种方法通过 如图: 这种方法的一个缺点是列之间如果加入分隔符,则列之间的空隙是放在下一列的左边而不是在两列之间平均分配。我们来看上面的例子加入分隔符后的样子 效果图: 另一种方法可以通过使用tabular 环境的列格式参数之一ph宽度i来指定相应列的固定宽度。这种方法需要用户手工计算分配每个列的具体宽度。另外,由于p参数不能和其他控制对齐方式的参数同时作用在一个列上,因此需要使用额外的方法来控制这些列的对齐方式(参见技巧55)。tabular*
环境来实现。在tabular*
环境的第一个参数中指定表格的总宽度,然后在表格的列格式参数中使用\extracolsep命令来增加列之间的空隙。\begin{tabular*}{5cm}{@{\extracolsep{\fill}}lllr}
\hline
1 & 2 & 3 & 4 \\
21 & 22 & 23 & 24 \\
\hline
\end{tabular*}\begin{tabular*}{5cm}
{@{\extracolsep{\fill}}|l|l|l|r|}
\hline
1 & 2 & 3 & 4 \\
21 & 22 & 23 & 24 \\
\hline
\end{tabular*}tabularx
宏包提供了一个自动计算分配列宽度的表格环境tabularx
。这个环境的使用方法和tabular*
相同。不同之处在于它增加了一个X参数。所有使用X参数的列会平均分配多余的空间,然后转换为p 参数来指定列的宽度。该宏包也提供了方法让你可以指定如何转换或者转换为其他的列参数。该宏包需要 array宏包的支持。ltxtable
宏包则结合了longtable
和tabularx
宏包的特点。但是它的用法有点复杂,请仔细阅读它的文档。
发表评论 取消回复