写表格的时候难免会遇到同一列的不同行中对齐方式不同的情况,但是Tabular环境和Array只能统一指定各列的对齐方式,这时就要用特殊的方法实现了。
在CTeX FAQ里提到的一种方法是用\centering来居中对齐,但是这只对用p来指定列宽而没有指定对齐方式的情况下管用,而且在换行时有RP现象。
看lshort的时候发现multicolumn是可以指定跨列单元格的对齐的,如果列数是1,那么不就能对齐了?
答案是肯定的,如果要在一个单元格里居中,只需要这样:
注意第一个参数是数字1而不是字母l,(用过multicolumn的应该都知道嗯)。
要左对齐或者右对齐的话,把c改成l或者r就行了。
为了方便起见,可以自己定义专门用于对齐的命令:
这样一来就可以用\tc、\tr、\tl来方便地对齐单元格中的文字了
Feb 03, 2009 07:38:29 AM
多谢了,这个很有帮助。
其中有个笔误,在\newcommand后,应该分别是tc tr tl,即:
\newcommand{\tc}[1]{\multicolumn{1}{c}{#1}} %居中对齐
\newcommand{\tl}[1]{\multicolumn{1}{l}{#1}} %左对齐
\newcommand{\tr}[1]{\multicolumn{1}{r}{#1}} %右对齐