Как центрировать содержимое ячеек таблицы LaTeX, столбцы которой имеют фиксированную ширину?

Рассмотрим следующий фрагмент кода LaTeX:

\begin{tabular}{p{1in}p{1in}} 
A & B\\ 
C & D\\
\end{tabular}

Как я могу выровнять содержимое каждой ячейки по центру ячейки, а не по левому краю? Обратите внимание, что я хочу убедиться, что ширина моих столбцов фиксирована, поэтому я не могу использовать атрибут позиции «c» вместо «p {.1in}» для центрирования содержимого ячейки.


person reprogrammer    schedule 31.08.2009    source источник


Ответы (2)


\usepackage{array} в преамбуле

тогда это:

\begin{tabular}{| >{\centering\arraybackslash}m{1in} | >{\centering\arraybackslash}m{1in} |}

обратите внимание, что «m» для фиксированного столбца предоставляется пакетом массива и даст вам вертикальное центрирование (если вы не хотите, просто вернитесь к «p»

person Mica    schedule 31.08.2009
comment
используйте raggedleft вместо центрирования - person Franck Dernoncourt; 30.07.2012
comment
Почему в таком заявлении текст во втором столбце не выравнивается по верхнему краю \begin{tabular}{| >{\centering\arraybackslash}m{1in} | >{\centering\arraybackslash}p{1in} |}? То же самое и для b. Все ячейки выровнены по вертикали, как наборы первого оператора (здесь m{1in}). - person boczniak767; 04.12.2017

Для этого вы можете использовать \centering со своим parbox.

Дополнительная информация здесь и здесь.

(Извините за ссылку, сохраненную в кеше Google; исходная ссылка, которая у меня была, больше не работает.)

person Matt Ball    schedule 31.08.2009