Tableaux moins rigoureux
-
- Utilisateur confirmé
- Messages : 33
- Inscription : samedi 03 décembre 2022, 18:11
- Statut actuel : Enseignant
Tableaux moins rigoureux
Bonjour
Je m'arrache les cheveux à faire des tableaux avec autre chose qu'un contenu irréaliste où il n'y aurait qu'une ligne par cellule avec une largeur parfaite.
Existe t-il aujourd’hui mieux que le package array pour ne pas avoir à choisir entre sa santé et par exemple un saut de ligne dans une cellule ou une largeur de cellule contrôlée ?
Typiquement j'en suis a 2 jours de perdus (car toujours échec) pour faire un tableau qui ressemblerait à ça Merci
Je m'arrache les cheveux à faire des tableaux avec autre chose qu'un contenu irréaliste où il n'y aurait qu'une ligne par cellule avec une largeur parfaite.
Existe t-il aujourd’hui mieux que le package array pour ne pas avoir à choisir entre sa santé et par exemple un saut de ligne dans une cellule ou une largeur de cellule contrôlée ?
Typiquement j'en suis a 2 jours de perdus (car toujours échec) pour faire un tableau qui ressemblerait à ça Merci
-
- Utilisateur chevronné
- Messages : 1143
- Inscription : jeudi 25 novembre 2010, 22:10
Re: Tableaux moins rigoureux
Un ecm ?
On peut penser à des boites (mbox ?).
On peut penser à des boites (mbox ?).
-
- Utilisateur confirmé
- Messages : 33
- Inscription : samedi 03 décembre 2022, 18:11
- Statut actuel : Enseignant
Re: Tableaux moins rigoureux
Le moins pire que j'ai réussi à faire (et tant mieux c'est en utilisant le moins possible de package) c'est ca
Le \par est ma découverte de l'instant pour pouvoir forcer un saut de ligne, j'ai l'impression de vivre un miracle en voyant le saut de ligne arriver.
Ce serait presque OK pour moi (bien que fort lourd à lire), il ne manquerait que
Code : Tout sélectionner
\documentclass{article}
\usepackage{array}
\usepackage[table]{xcolor} % pour pouvoir définir des couleurs plusu complexes
\begin{document}
toto va (bien)
\begin{center}
\renewcommand{\arraystretch}{1.6} % pour haugmenter la hauteur des lignes du tableau
\begin{tabular}{| m{.3\textwidth} | m{.3\textwidth} | m{.3\textwidth} |}
\hline
\rowcolor[gray]{.9}\centering \textbf{A} & \centering \textbf{Bébé va bien} & \centering \textbf{C}\par kg \tabularnewline
\hline
\centering \textbf{Machin de la mort qui tue} & Balbla super intéressant qui va tout changer & Foo\par Bar \tabularnewline
\hline
\centering \textbf{Bidule} & Foo\par Bar & Balbla super intéressant qui va tout changer \tabularnewline
\hline
\centering \textbf{Bidule} & Foo qui est super long et tout et tout\par Bar qui est aussi super mega long & Balbla court \tabularnewline
\hline
\end{tabular}
\end{center}
\end{document}
Ce serait presque OK pour moi (bien que fort lourd à lire), il ne manquerait que
- * comment ajouter des caractères facilement (exemple mettre entre () le kg dans la ligne de titre
* comment ajouter un bloc itemize à la place du Foo \par Bar
-
- Utilisateur éprouvé
- Messages : 111
- Inscription : jeudi 21 avril 2016, 11:34
Re: Tableaux moins rigoureux
Bonjour,
ce billet reprend les package gérant les tableaux, indique les possiblités de ces packages. Ce pourrait être vous être utile :
https://texnique.fr/osqa/questions/3316 ... eur-propos
ce billet reprend les package gérant les tableaux, indique les possiblités de ces packages. Ce pourrait être vous être utile :
https://texnique.fr/osqa/questions/3316 ... eur-propos
-
- Utilisateur confirmé
- Messages : 33
- Inscription : samedi 03 décembre 2022, 18:11
- Statut actuel : Enseignant
Re: Tableaux moins rigoureux
Très intéressant, merci.
-
- Utilisateur confirmé
- Messages : 36
- Inscription : dimanche 29 novembre 2020, 21:29
- Statut actuel : Enseignant
Re: Tableaux moins rigoureux
Il existe le package
tabularray
pour les tableaux un peu "exotiques" :-)Code : Tout sélectionner
\documentclass[12pt,a4paper,french]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tabularray}
\begin{document}
\begin{tblr}
{hlines,vlines,colspec={Q[2cm,c,m]Q[2cm,c,m]Q[2cm,l,m]},row{1}={font=\bfseries},stretch=2,cell{1}{3}={c},cell{2-4}{2}={l}}
A&B&C \\
Truc & {tutu \\ titi} & {>Toc \\ >Tic \\ >Tuc} \\
{Machin de la mort qui tue} & toto & {>foo \\ >bar} \\
Bidule & {Blabla super intéressant qui va tout changer} & {>Toc \\ >Tic \\ >Tuc} \\
\end{tblr}
\end{document}
-
- Utilisateur confirmé
- Messages : 33
- Inscription : samedi 03 décembre 2022, 18:11
- Statut actuel : Enseignant
Re: Tableaux moins rigoureux
ouha comme il a l'air bien ce tabularray, ça fait un paquet de blabla en moins a mettre dans les lignes, merci
-
- Utilisateur éprouvé
- Messages : 297
- Inscription : mercredi 24 avril 2013, 19:47
- Statut actuel : Enseignant
Re: Tableaux moins rigoureux
Avec
Je ne maîtrise pas toutes les options.
tabularray
, j'ai réussi à faire ceci.Je ne maîtrise pas toutes les options.
Code : Tout sélectionner
\documentclass{article}
\usepackage{array,tabularray}
\UseTblrLibrary{varwidth}
\usepackage[table]{xcolor} % pour pouvoir définir des couleurs plusu complexes
\usepackage[showframe]{geometry}
\usepackage[french]{babel}
\begin{document}
toto va (bien)
\begin{center}
\renewcommand{\arraystretch}{1.6} % pour haugmenter la hauteur des lignes du tableau
\begin{tabular}{| m{.3\textwidth} | m{.3\textwidth} | m{.3\textwidth} |}
\hline
\rowcolor[gray]{.9}\centering \textbf{A} & \centering \textbf{Bébé va bien} & \centering \textbf{C}\par kg \tabularnewline
\hline
\centering \textbf{Machin de la mort qui tue} & Balbla super intéressant qui va tout changer & Foo\par Bar \tabularnewline
\hline
\centering \textbf{Bidule} & Foo\par Bar & Balbla super intéressant qui va tout changer \tabularnewline
\hline
\centering \textbf{Bidule} & Foo qui est super long et tout et tout\par Bar qui est aussi super mega long & Balbla court \tabularnewline
\hline
\end{tabular}
\end{center}
\begin{center}
\begin{tblr}{%
width = \linewidth, %
,stretch = 1.6%
,colspec = { X[1,c] X[1,l] X[1,l] }
,rowspec = { Q[m] Q[m] Q[m] Q[m]}
,hlines,%
,vlines%
,vline{1,4} = {1}{0pt}%
,row{1} ={gray!25}%
,cell{1}{1-3} = {cmd = \bfseries}%
,cell{1-4}{1}= {cmd = \bfseries}%
,measure=vbox%
}
A & \SetCell[r=1,c=1]{c} Bébé va bien & \SetCell[r=1,c=1]{c} {C\\ \normalfont (kg)} \\
Machin de la mort qui tue & Balbla super intéressant qui va tout changer & {Foo\\ Bar} \\
Bidule & \begin{itemize}
\item Foo \item Bar
\end{itemize} & Balbla super intéressant qui va tout changer \\
Bidule & {Foo qui est super long et tout et tout\\ Bar qui est aussi super mega long} & Balbla court \\
\end{tblr}
\end{center}
\end{document}
-
- Utilisateur chevronné
- Messages : 1143
- Inscription : jeudi 25 novembre 2010, 22:10
Re: Tableaux moins rigoureux
Cool, j'allais m'y coller mais je vois qu'il y a eu des réponses.
Edit, en restant sur la même base mais avec des parbox :
Edit, en restant sur la même base mais avec des parbox :
Code : Tout sélectionner
\documentclass{article}
\usepackage[table]{xcolor} % pour pouvoir définir des couleurs plusu complexes
\begin{document}
toto va (bien)
\begin{center}
\begin{tabular}{| m{.3\textwidth} | m{.3\textwidth} | m{.3\textwidth} |}
\hline
\rowcolor[gray]{.9}\centering \textbf{A} & \centering \textbf{Bébé va bien} & \parbox{3cm}{\centering \textbf{C} \\ kg} \tabularnewline
\hline
\centering \textbf{Machin de la mort qui tue} & Balbla super intéressant qui va tout changer & Foo\par Bar \tabularnewline
\hline
\centering \textbf{Bidule} & \parbox{2cm}{Foo \\ Bar} & \parbox{2cm}{Balbla super intéressant qui va tout changer} \tabularnewline
\hline
\centering \textbf{Bidule} & \parbox{3cm}{Foo qui est super long et tout et tout Bar qui est aussi super mega long} & Balbla court \tabularnewline
\hline
\end{tabular}
\end{center}
\end{document}
-
- Utilisateur confirmé
- Messages : 23
- Inscription : dimanche 07 juillet 2019, 14:37
Re: Tableaux moins rigoureux
Avec
L'un des avantages de
NiceTabular
of nicematrix
.Code : Tout sélectionner
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
toto va (bien)
\begin{center}
\renewcommand{\arraystretch}{1.6} % pour augmenter la hauteur des lignes du tableau
\begin{NiceTabular}{>{\bfseries}m[c]{.3\textwidth}m{.3\textwidth}m{.3\textwidth}}[hvlines]
\RowStyle[rowcolor=[gray]{0.9}]{\bfseries\centering}
A & Bébé va bien & C\par kg \\
Machin de la mort qui tue & Balbla super intéressant qui va tout changer & Foo\par Bar \\
Bidule & Foo\par Bar & Balbla super intéressant qui va tout changer \\
Bidule & Foo qui est super long et tout et tout\par Bar qui est aussi super mega long & Balbla court \\
\end{NiceTabular}
\end{center}
\end{document}
nicematrix
(par rapport, bien sûr à l'excellent tabularray
) est que {NiceTabular}
étend {tabular}
(et donc que, dans un premier temps, en changeant le nom de l'environnement, on a un environnement correct que l'on peut compiler).