Suivant: , Précédent: , Monter: Environments   [Table des matières][Index]


8.23 tabular

Synopsis :

\begin{tabular}[pos]{cols}
column 1 entry & column 2 entry ... & column n entry \\
...
\end{tabular}

ou

\begin{tabular*}{largeur}[pos]{cols}
column 1 entry & column 2 entry ... & column n entry \\
...
\end{tabular*}

Ces environnements produisent une boîte consistant d’une séquence de ligne horizontales. Chaque ligne consiste en des articles qui sont alignés verticalement au sein de colonnes. Ci-après une illustration de beaucoup des caractéristiques.

\begin{tabular}{l|l}
  \textit{Nom du joueur}  &\textit{Coups de circuit de toute sa carrière}  \\
  \hline
  Hank Aaron  &755 \\
  Babe Ruth   &714
\end{tabular}

Le format vertical de deux colonnes alignées à gauche, avec une barre verticales entre elles, est spécifié par l’argument {l|l} de tabular. Les colonnes sont séparées avec une esperluette &. On crée un filet horizontal entre deux lignes avec \hline. La fin de chaque ligne est marquée avec une double-contr’oblique \\. Cette \\ est optionnelle après la dernière ligne, à moins qu’une commande \hline suive, pour mettre un filet sous le tableau.

Les arguments obligatoires et optionnels de tabular consistent en :

largeur

Obligatoire pour tabular*, non autorisé pour tabular. Spécifie la largeur de l’ environnement tabular*. Il doit y avoir de l’espace élastique entre les colonnes, comme avec with @{\extracolsep{\fill}}, de sorte à permettre au tableau de se dilater ou contracter pour faire la largeur spécifiée, sans quoi vous aurez probablement l’avertissement Underfull \hbox (badness 10000) in alignment ...

pos

Optionnel. Spécifie la position verticale du tableau. La valeur par défaut est d’aligner le tableau de sorte à ce que son centre vertical s’accorder à la ligne de base du texte autour. Il y a deux autres alignements possible : t aligne le tableau de sorte que la première ligne s’accorde à la ligne de base du texte autour, et b fait la même chose pour la dernière ligne du tableau.

Ceci n’a un effet que si il y a du texte autour de la table. Dans le cas usuel d’un tabular seul au sein d’un environnement center cette option ne fait aucune différence.

cols

Obligatoire. Spécifie le formatage des colonnes. Il consiste en une séquence des spécificateurs suivants, correspondant à la séquence des colonnes et du matériel intercolonne.

l

Une colonne d’articles alignés à gauche.

r

Une colonne d’article alignés à droite.

c

Une colonne d’article centrés.

|

Une ligne verticale s’étendant complètement sur la hauteur et profondeur de l’environnement.

@{texte ou espace}

Ceci insère texte ou espace à cette position dans chaque ligne. Le matériel texte ou espace est composé en mode LR. Ce texte est fragile (voir \protect).

Ce spécificateur est optionnel : à moins que vous mettiez dans votre propre @-expression alors les classes book, article et report de LaTeX mettent de chaque côté de chaque colonne un espace de longueur \tabcolsep, qui par défaut vaut ‘6pt’. C’est à dire que par défaut des colonnes adjacentes sont séparées de 12pt (ainsi \tabcolsep est un nom trompeur puisque ce n’est pas la séparation entre des colonnes de tableau). Aussi, par défaut un espace de 6pt vient après la première colonne ainsi qu’après la dernière colonne, à moins que vous placiez un @{...} ou | à cet endroit.

Si vous l’emportez sur la valeur par défaut et utilisez une expression en @{...} alors vous devez insérer tout espace désiré vous-même, comme dans @{\hspace{1em}}.

Une expression vide @{} élimine l’espace, y compris l’espace au début ou à la fin, comme dans l’exemple ci-dessous où on veut que les lignes du tableau soient alignées sur la marge de gauche.

\begin{flushleft}
  \begin{tabular}{@{}l}
    ..
  \end{tabular}
\end{flushleft}

Cet exemple montre du texte, une virgule de séparation décimale, entre les colonnes, arangé de sorte que les nombres dans la table sont alignés sur cette virgule.

\begin{tabular}{r@{$,$}l}
  $3$ &$14$  \\
  $9$ &$80665$
\end{tabular}

Une commande \extracolsep{lrg} au sein d’une expression en ‘@{…}’ a pour effet qu’une espace supplémentaire de largeur lrg apparaît sur la gauche de toutes les colonnes suivantes, jusqu’à contre-ordre d’une autre commande \extracolsep. Contrairement aux à espace inter-colonnes ordinaires, cette espace supplémentaire n’est pas supprimé par une expression en ‘@{…}’. Une commande \extracolsep peut uniquement être utilisée au sein d’une expression en ‘@{…}’ elle-même au sein de l’argument cols.

\begin{center}
  \begin{tabular*}{10cm}{l@{\ \ldots\extracolsep{\fill}}l}
    Tomber sept fois, se relever huit
    &c'est comme ça la vie !
  \end{tabular*}
\end{center}

Pour insérer des commandes qui sont automatiquement exécutées avant une colonne donnée, charger le paquetage array et utilisez le spécificateur >{...}.

p{lrg}

Chaque cellule de la colonne est composée au sein d’une parbox de largeur lrg, comme si c’était l’argument d’une commande \parbox[t]{lrg}{...}.

Les sauts de ligne de type double-contr’oblique \\ ne sont pas permis au sein d’une telle cellule, sauf à l’intérieur d’un environnement comme minipage, array, ou tabular, ou à l’intérieur d’une \parbox explicite, ou dans la portée d’une déclaration \centering, \raggedright, ou \raggedleft (quand elles sont utilisées au sein d’une cellule de colonne en p ces déclarations doivent apparaître entre accolades, comme dans {\centering .. \\ ..}. Sans quoi LaTeX prendra la double contr’oblique comme une fin de ligne de tableau. Au lieu de cela, pour obtenir un saut de ligne dans une cellule de ce type utilisez \newline (voir \newline).

*{num}{cols}

Équivalent à num copies de cols, où num est un entier positif et cols est toute liste de spécificateurs. Ainsi \begin{tabular}{|*{3}{l|r}|} équivaut à \begin{tabular}{|l|rl|rl|r|}. Notez que cols peut contenir une autre expression en *{…}{…}.

Paramètres qui contrôlent le formatage :

\arrayrulewidth

Une longueur qui est l’épaisseur du filet créé par |, \hline, et \vline au sein des environnements tabular et array. La valeur par défaut est ‘.4pt’. On peut la changer comme dans \setlength{\arrayrulewidth}{0.8pt}.

\arraystretch

Un facteur par lequel l’espacement entre les lignes au sein des environnements tabular et array est multiplié. La valeur par défaut est ‘1’ pour aucune dilatation/contraction. On peut la changer comme dans \renewcommand{\arraystretch}{1.2}.

\doublerulesep

Une longueur qui est la distance ente les filets verticaux produit par le spécificateur ||. La valeur par défaut est ‘2pt’.

\tabcolsep

Une longueur qui est la moitié de l’espace entre les colonnes. La valeur par défaut est ‘6pt’. On peut la changer avec \setlength

Les commandes suivantes peuvent être utilisées à l’intérieur du corps d’un environnement tabular :


Suivant: , Précédent: , Monter: Environments   [Table des matières][Index]