Peut-on fixer les largeurs des colonnes, autoriser le passage à la ligne à l'intérieur des cellules s'il y a trop de texte et centrer horizontalement et verticalement les données à l'intérieur des cellules quand on construit un tableau en LaTeX ? Avec l'environnement |
Avec tabularx, mais les largeurs p{largeur} et X alignent le texte à gauche. \documentclass[french,a4paper]{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{tabularx} \usepackage[final,babel]{microtype} \usepackage{babel} \begin{document} \section*{Tableau} Colonnes de largeur fixe adaptée à la plus longueligne: l | c | r Colonnes de largeur fixe choisie : p\{largeur\} Colonnes de largeur calculée automatiquement: X \medskip \begin{tabularx}{\textwidth}{|p{3em}XcX|} \hline p\{2em\} & X & c & X \\ \hline A (2em) & Blabla, un peu de texte & Texte centré de largeur fixe & Texte dans une colonne de largeur extensible|compressible \\ B un peu trop long & L'environnement tabularx rend obligatoire l'argument \emph{largeur} du tableau. En revanche, il offre le formatage automatique des largeurs de colonne X & Texte centré & Du texte, du blabla% \footnote{% et même des notes!% } \\ \hline \end{tabularx} \end{document} Publiée 16 Sep '22, 15:15 joseph-tux |
En spécifiant des longueurs et d'autres paramètres aux lignes et aux colonnes (je ne sais pas si une des deux solutions est "mieux" que l'autre) : \documentclass[a4paper]{article} \usepackage{xcolor} \usepackage{tabularray} \begin{document} \begin{tblr}{hlines, vlines, rows={m}, row{1}=2cm,row{2}={3cm,lime}, columns={c}, column{1}=4cm,column{2}={5cm,font=\bfseries}} Texte sur plusieurs lignes. Texte sur plusieurs lignes. & AAA \\ b & Texte sur plusieurs lignes. Texte sur plusieurs lignes. \\ \end{tblr} \bigskip \begin{tblr}{hlines, vlines, rowspec={Q[c,ht=2cm]Q[c,ht=3cm,lime]}, colspec={Q[m,wd=4cm]Q[m,wd=5cm,font=\bfseries]}, } Texte sur plusieurs lignes. Texte sur plusieurs lignes. & AAA \\ b & Texte sur plusieurs lignes. Texte sur plusieurs lignes. \\ \end{tblr} \end{document} Publiée 15 Sep '22, 15:31 logamath |
Avec tabularray : \documentclass[a4paper]{article} \usepackage{tabularray} \begin{document} \begin{tblr}{hlines, vlines, rows={2cm,m}, columns={3cm,c}} Texte sur plusieurs lignes. Texte sur plusieurs lignes. & a \\ b & Texte sur plusieurs lignes. Texte sur plusieurs lignes. \\ \end{tblr} \end{document} Publiée 15 Sep '22, 11:21 logamath Merci pour les réponses, je vais creuser la question dans le but de choisir en plus des dimensions de lignes et de colonnes pas forcément identiques.
(15 Sep '22, 13:29)
ablasz
|
Pour en savoir davantage sur les tableaux, vous pouvez par exemple consulter ce document.
J'utiliserais https://ctan.org/pkg/tabularray
J'avais commis cet aide-mémoire à usage personnel, qui date un peu, mais on y trouve les opérateurs m{largeur} | b{largeur} Alignement vertical : m = milieu , b = bas, défaut (p) = haut) avec les extensions array, tabularx et autres dérivées. (et le format de largeur automatique «X» de tabularx)
https://www.joseph-tux.fr/Tableaux-LaTeX
Je ne connaissais pas tblr ( tabularray) dont la syntaxe a l'air plus simple.
@joseph-tux Merci pour ce partage ! L'uRL correcte me semble cependant être https://www.joseph-tux.fr/Tableaux-LaTeX-syntaxe?lang=fr.
Merci Denis pour cette correction du lien