64 votes

Comment centrer le contenu des cellules d'un tableau LaTeX dont les colonnes ont des largeurs fixes?

Considérez le code LaTeX suivant :

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

Comment puis-je aligner le contenu de chaque cellule au centre plutôt qu'à gauche ? Notez que je veux m'assurer que les largeurs de mes colonnes sont fixes, je ne peux donc pas utiliser l'attribut de position "c" à la place de "p{1in}" pour centrer le contenu de ma cellule.

89voto

Mica Points 7392

\usepackage{array} dans le préambule

puis ceci :

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

notez que le "m" pour colonne de largeur fixe est fourni par le package array, et vous donnera un centrage vertical (si vous ne le voulez pas, revenez simplement à "p")

8voto

Matt Ball Points 165937

Vous pouvez utiliser \centering avec votre parbox pour cela.

Plus d'informations ici et ici.

(Désolé pour le lien en cache Google; l'original que j'avais ne fonctionne plus.)

1voto

MattAllegro Points 2252

Je pense que cette réponse est la meilleure source. Vous pouvez déclarer le newcolumntype dans l'en-tête puis l'utiliser au besoin:

\documentclass{article}
\usepackage{array}

\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}

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

J'ai seulement ajouté les lignes verticales | pour rendre la largeur des colonnes (1in) et le centrage plus évidents dans la sortie:

capture d'écran de la sortie

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X