Centrage horizontal et vertical avec tabularx

Tout ce qui concerne le langage TeX/LaTeX et ses variantes. Ce langage est utilisable sur le forum via les balises tex.
[participation réservée aux utilisateurs inscrits]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
yodai
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 145
Inscription : dimanche 21 septembre 2008, 10:55
Statut actuel : Enseignant

Centrage horizontal et vertical avec tabularx

Message non lu par yodai »

Bonjour,

j'ai découvert tabularx et je trouve ce package plus pratique que tabular.
Cependant, malgré des recherches web, je rencontre quelque difficulté.

Par exemple:

Code : Tout sélectionner


\begin{tabularx}{10 cm}
{|>\centering X
|>\centering X
|>\centering X
|>\centering X|}
	\hline 
		$f$ & $g$ & $h$ & $i$ \\
	\hline
\end{tabularx}
Le dernier \hline n'est pas pour le tableau mais seulement pour la dernière cellule où il y a $i$

De plus, je ne sais pas comment centrer verticalement le texte dans une cellule avec l'argument X.

Merci pour votre aide.
yodai
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 145
Inscription : dimanche 21 septembre 2008, 10:55
Statut actuel : Enseignant

Re: tabularx et centrage horizontale et verticale

Message non lu par yodai »

j'ai trouvé le problème du centrage horizontale :

Code : Tout sélectionner

\begin{tabularx}{18 cm}
{|>{\centering \arraybackslash} X
|>{\centering \arraybackslash} X
|>{\centering \arraybackslash} X
|>{\centering \arraybackslash} X
|}
	\hline 
		$f$ & $g$ & $h$ & $i$ \\
	\hline
\end{tabularx}
Par contre, je n'ai trouvé pour le centrage verticale.

Merci pour votre aide.
F. Pantigny
Utilisateur confirmé
Utilisateur confirmé
Messages : 22
Inscription : dimanche 07 juillet 2019, 14:37

Re: Centrage horizontal et vertical avec tabularx

Message non lu par F. Pantigny »

En fait, il n'y a pas de notion univoque de centrage vertical, même avec une simple ligne de texte. En effet, si une cellule contient le mot famille et une autre papier, comment faut-il les centrer ? Le mot famille a des lettres avec des hampes mais aucun jambage alors que le mot papier, au contraire, possède des lettres à jambages mais aucune hampe. Si les deux mots étaient centrés verticalement chacun de leur côté dans leur cellule, les deux mots ne seraient plus écrits sur la même ligne de base (la ligne d'écriture, si je puis dire). Ce n'est sans doute pas ce qui est souhaité dans la plupart des cas...

Si on souhaite changer les espaces situés au-dessus et au-dessous des éléments de texte, on peut utiliser (dans {tabular} ou {tabularx}):
  • \arraystretch (un paramètre sans dimension qui se règle avec \renewcommand)
  • \extrarowheight (un paramètre dimensionnel qui se règle avec \setlength)
  • Avec {NiceTabular} de l'extension nicematrix, on peut utiliser la clé cell-space-limits qui est une longueur.
De toutes manières, beaucoup de personnes vont conseiller (à juste titre) d'utiliser booktabs et de faire des tables dans l'esprit de cette extension. Le problème du centrage vertical apparait alors différemment car on utilise moins de filets horizontaux.