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.