Aller au contenu

array, tabularx, longtable et tabulary dans Scissor LaTeX

Les packages array et tabularx et leurs proches fonctionnent en partie dans Scissor LaTeX : les tableaux tabularx, tabulary, longtable et xltabular se composent comme tabular, et les cellules longues passent à la ligne quand le tableau dépasserait la largeur de la ligne ; les largeurs de colonnes (p{3cm}, X, la largeur du tableau) et le code >{...}/<{...} sont ignorés, \newcolumntype est inconnue, et les en-têtes de longtable ne se répètent pas.

Ce que font les packages

  • array ajoute des types de colonnes comme m{width} et b{width}, du code avant et après chaque cellule avec >{...} et <{...}, et \newcolumntype pour vos propres lettres de colonne.
  • tabularx fournit \begin{tabularx}{\textwidth}{lX}, où les colonnes X s’étirent pour que le tableau ait la largeur indiquée. tabulary fait de même avec des colonnes L, C, R, J qui se partagent la largeur selon leur contenu.
  • longtable permet à un tableau de se poursuivre sur plusieurs pages, avec un en-tête qui se répète (\endhead). xltabular combine longtable et tabularx.

Ce qui fonctionne ici

FonctionDans Scissor LaTeXRemarques
tabularx, tabulary, xltabular, longtable, tabular*En partieComposés comme tabular. L’argument de largeur totale est ignoré.
Colonnes X, L, C, R, JEn partieX et L sont alignées à gauche, C centrée, R alignée à droite.
p{3cm}, m{3cm}, b{3cm}En partieAlignées à gauche ; la largeur est ignorée.
Texte long dans une celluleFonctionnePasse à la ligne quand le tableau serait sinon plus large que la ligne.
>{\bfseries}l, r<{\%}IgnoréeLe code avant et après les cellules est ignoré.
\newcolumntype{C}{...}Non prise en chargeIgnorée avec une remarque dans l’onglet Problèmes, et sa définition s’affiche comme du texte. Écrivez plutôt le type de colonne en entier.
\endhead, \endfirsthead, \endfoot, \endlastfootIgnoréeUn long tableau se poursuit sur plusieurs pages, mais son en-tête n’est pas répété.
\tabularnewlineFonctionneIdentique à \\.
\arraybackslashNon prise en chargeIgnorée avec une remarque dans l’onglet Problèmes ; sans conséquence par ailleurs.

Exemples

Un tableau tabularx avec une colonne extensible. Le texte long passe à la ligne au bord du texte, comme dans une installation TeX :

tabularx avec une colonne X

LaTeXPréambule : \usepackage{tabularx}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tabularx}{\textwidth}{lX}
\hline
Name & Notes \\
\hline
Erika Mustermann & Leads the project, writes the reports and checks
  every one of the 44 measurements twice before they are published. \\
John Doe & Builds the test setup. \\
\hline
\end{tabularx}
Composé par Scissor LaTeX: tabularx avec une colonne X

Un longtable avec une ligne d’en-tête. Le tableau se compose ; dans un long document, l’en-tête ne serait pas répété sur la page suivante :

longtable avec \endhead

LaTeXPréambule : \usepackage{longtable}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{longtable}{lr}
\hline
Item & Count \\
\hline
\endhead
Pencils & 44 \\
Erasers & 12 \\
Rulers  & 7 \\
\hline
\end{longtable}

Le code dans >{...} est ignoré : cette colonne n’est donc pas en gras et les signes pour cent manquent :

>{...} et <{...} sont ignorés

LaTeXPréambule : \usepackage{array}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tabular}{>{\bfseries}l r<{\,\%}}
Growth & 44 \\
Share  & 12 \\
\end{tabular}

Écrivez plutôt la mise en forme dans les cellules. Cela fonctionne ici comme dans une installation TeX :

Mise en forme écrite dans les cellules

\begin{tabular}{lr}
\textbf{Growth} & 44\,\% \\
\textbf{Share}  & 12\,\% \\
\end{tabular}

Compatibilité

  • D’une installation TeX vers Scissor LaTeX : les tableaux se composent et gardent leur alignement, mais pas leurs largeurs de colonnes. Repérez les lettres de colonne personnalisées définies avec \newcolumntype.
  • De Scissor LaTeX vers une installation TeX : les documents s’y compilent sans modification, et les largeurs y sont appliquées.

Les manuels complets se trouvent sur CTAN : ctan.org/pkg/array, ctan.org/pkg/tabularx, ctan.org/pkg/tabulary, ctan.org/pkg/longtable et ctan.org/pkg/xltabular. Pour les tableaux en général, voir Tableaux en LaTeX.

Voir aussi Tableaux, multirow, booktabs et le générateur de tableaux LaTeX.

Questions et réponses

Pourquoi ma colonne p{3cm} n’a-t-elle pas une largeur de 3 cm ?

Les largeurs de colonnes ne sont pas encore appliquées. Le texte long passe quand même à la ligne au bord du texte, et le tableau reste donc dans la page.

longtable se poursuit-il sur plusieurs pages ?

Oui, un long tableau continue sur la page suivante, mais les lignes marquées avec \endhead n’y sont pas répétées.

Chaque exemple de cette page est composé par Scissor LaTeX lors de la génération du site. Dernière mise à jour : 2026-11-07.