Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
2_composition:tableaux:tableau_sur_plusieurs_pages [2002/09/07 13:46]
markey
2_composition:tableaux:tableau_sur_plusieurs_pages [2019/04/02 09:10] (Version actuelle)
jejust Mise en forme de la description des commandes et du code.
Ligne 1: Ligne 1:
-\question{Comment ​gérer les tableaux de plus d'une page ?} %7.2+====== ​Comment ​composer des tableaux de plus d'une page? ====== 
 + 
 + 
 +$\Reponse$ ​ Le package [[ctanpkg>​supertabular]] permet de définir de longs 
 +tableaux, qui seront coupés automatiquement par <​latex>​\LaTeX</​latex>​ si 
 +nécessaire,​ pour changer de page. L'​environnement s'​appelle ''​supertabular''​. 
 +À l'​intérieur de cet environnement,​ on définit le contenu du tableau 
 +de la même façon que dans l'​environnement ''​tabular''​. On peut, en plus, 
 +utiliser les commandes suivantes : 
 + 
 +  * ''​\tablefirsthead{...}''​ définit le contenu de la première ligne du tableau ; 
 +  * ''​\tablehead{...}''​ définit le contenu de la première ligne qui sera insérée en cas de changement de page au milieu du tableau ; 
 +  * ''​\tabletail{...}''​ définit le contenu de la dernière ligne d'une page, en cas de changement de page au milieu du tableau ; 
 +  * ''​\tablelasttail{...}''​ définit le contenu de la dernière ligne du tableau ; 
 +  * ''​\topcaption{...}''​ et ''​\bottomcaption{...}''​ permettent de mettre une légende sur ce tableau, soit au début, soit à la fin (ces deux commandes sont incompatibles,​ si l'on utilise les deux, seule la légende de fin sera appliquée). ''​\tablecaption{}''​ place la légende à sa position « habituelle », qui est par défaut le haut du tableau.
  
-\reponse Le package \pack{supertabular} permet de d\'​efinir de longs tableaux, 
-qui seront coup\'​es automatiquement par \LaTeX si n\'​ecessaire,​ pour changer 
-de page. L'​environnement s'​appelle \env{supertabular}. \`A l'​int\'​erieur de 
-cet environnement,​ on d\'​efinit le contenu du tableau de la m\^eme fa\c con 
-que dans l'​environnement \env{tabular}.On peut, en plus, utiliser les commandes suivantes :  
-\begin{itemize} 
-\item \cmd{tablefirsthead}\marg{...},​ qui d\'​efinit le contenu de la 
-  premi\`ere ligne du tableau ; 
-\item \cmd{tablehead}\marg{...} d\'​efinit le contenu de la premi\`ere ligne 
-  qui sera ins\'​er\'​ee en cas de changement de page au milieu du tableau ; 
-\item \cmd{tabletail}\marg{...} d\'​efinit le contenu de la derni\`ere ligne 
-  d'une page, en cas de changement de page au milieu du tableau ; 
-\item \cmd{tablelasttail}\marg{...} d\'​efinit le contenu de la derni\`ere ligne du 
-  tableau ; 
-\item \cmd{topcption}\marg{...},​ \cmd{bottomcaption}\marg{...} permettent de  
-  mettre une l\'​egende sur ce tableau, soit au d\'​ebut,​ soit \`a la fin.  
-  \cmd{tablecaption} place la l\'​egende \`a sa position <<​~habituelle~>>,​ qui 
-  est par d\'​efaut le haut du tableau. 
-\end{itemize} 
  
 Voici un exemple :  Voici un exemple : 
-\begin{noexemple}+ 
 +<code latex>
 \begin{center} \begin{center}
-   \tablefirsthead{\hline ​ \multicolumn{1}{|c}{Nombre} +  ​\tablefirsthead{\hline 
-   & \multicolumn{1}{c}{Nombre$^2$} +    ​\multicolumn{1}{|c}{Nombre} & \multicolumn{1}{c}{Nombre$^2$} & Nombre$^4$ & \multicolumn{1}{c|}{!Nombre} \\  
-   & Nombre$^4$ +    ​\hline
-   & \multicolumn{1}{c|}{Nombre!} \\ \hline} +  ​
-   ​\tablehead{\hline \multicolumn{4}{|l|}{\small\textsl{+  \tablehead{\hline 
-       suite du tableau}}\\ +    ​\multicolumn{4}{|l|}{\small\textsl{suite du tableau}}\\ 
-   ​\hline \multicolumn{1}{|c}{ Nombre} +    \hline 
-   & \multicolumn{1}{c}{Nombre$^2$} +    ​\multicolumn{1}{|c}{ Nombre} & \multicolumn{1}{c}{Nombre$^2$} & Nombre$^4$ & \multicolumn{1}{c|}{Nombre!} \\  
-   & Nombre$^4$ +    ​\hline
-   & \multicolumn{1}{c|}{Nombre!} \\ \hline} +  ​
-   ​\tabletail{\hline\multicolumn{4}{|r|}{\small\textsl{%  +  \tabletail{\hline 
-  Suite \`a la page suivante~\ldots}}\\\hline}  +    ​\multicolumn{4}{|r|}{\small\textsl{Suite ​à la page suivante...}}\\ 
-   ​\tablelasttail{\hline} +    ​\hline
-   ​\bottomcaption{Exemple de grand tableau} +  ​
-   \par +  \tablelasttail{\hline} 
-   ​\begin{supertabular}{| r@{\hspace{6.5mm}}|+  ​\topcaption{Exemple} 
 +  ​\bottomcaption{Exemple de grand tableau} 
 +% 
 +  \begin{supertabular}{| r@{\hspace{6.5mm}}|
       r@{\hspace{5.5mm}}| r | r|}       r@{\hspace{5.5mm}}| r | r|}
-      ​1   & ​    ​1 ​ &        1  &           ​1 ​   \\ +    ​1   & ​    ​1 ​ &        1  &           ​1 ​   \\ 
-      2   & ​    ​4 ​ &       ​16 ​ &           ​2 ​   \\ +    2   & ​    ​4 ​ &       ​16 ​ &           ​2 ​   \\ 
-      3   & ​    ​9 ​ &       ​81 ​ &           ​6 ​   \\ +    3   & ​    ​9 ​ &       ​81 ​ &           ​6 ​   \\ 
-      4   & ​   16  &      256  &          24    \\ +    4   & ​   16  &      256  &          24    \\ 
-      5   & ​   25  &      625  &         ​120 ​   \\ +    5   & ​   25  &      625  &         ​120 ​   \\ 
-      6   & ​   36  &     ​1296 ​ &         ​720 ​   \\ +    6   & ​   36  &     ​1296 ​ &         ​720 ​   \\ 
-      7   & ​   49  &     ​2401 ​ &        5040    \\ +    7   & ​   49  &     ​2401 ​ &        5040    \\ 
-      8   & ​   64  &     ​4096 ​ &       ​40320 ​   \\ +    8   & ​   64  &     ​4096 ​ &       ​40320 ​   \\ 
-      ...       ...       ...      ...      ... +    ​9 ​  & ​   81  &     ​6561 ​ &      362880 ​   \\ 
-   ​\end{supertabular}+    ​... &    ​...      ​... ​ & ​        ...    \\ 
 +  \end{supertabular}
 \end{center} \end{center}
-\end{noexemple}+</​code>​
  
 +<​latexdoc>​
 +\documentclass[10pt,​french]{article}
 + ​\usepackage[utf8]{inputenc}
 + ​\usepackage{supertabular}
 + ​\pagestyle{empty}
 +
 +\begin{document}
 +  \tablefirsthead{\hline
 +    \multicolumn{1}{|c}{Nombre} & \multicolumn{1}{c}{Nombre$^2$} & Nombre$^4$ & \multicolumn{1}{c|}{!Nombre} \\ 
 +    \hline%
 +  }
 +  \tablehead{\hline
 +    \multicolumn{4}{|l|}{\small\textsl{suite du tableau}}\\
 +    \hline
 +    \multicolumn{1}{|c}{ Nombre} & \multicolumn{1}{c}{Nombre$^2$} & Nombre$^4$ & \multicolumn{1}{c|}{Nombre!} \\ 
 +    \hline%
 +  }
 +  \tabletail{\hline
 +    \multicolumn{4}{|r|}{\small\textsl{Suite à la page suivante...}}\\
 +    \hline%
 +  }
 +  \tablelasttail{\hline}
 +  \topcaption{Exemple}
 +  \bottomcaption{Exemple de grand tableau}
 +%
 +  \begin{supertabular}{| r@{\hspace{6.5mm}}|
 +      r@{\hspace{5.5mm}}| r | r|}
 +    1   & ​    ​1 ​ &        1  &           ​1 ​   \\
 +    2   & ​    ​4 ​ &       ​16 ​ &           ​2 ​   \\
 +    3   & ​    ​9 ​ &       ​81 ​ &           ​6 ​   \\
 +    4   & ​   16  &      256  &          24    \\
 +    5   & ​   25  &      625  &         ​120 ​   \\
 +    6   & ​   36  &     ​1296 ​ &         ​720 ​   \\
 +    7   & ​   49  &     ​2401 ​ &        5040    \\
 +    8   & ​   64  &     ​4096 ​ &       ​40320 ​   \\
 +    9   & ​   81  &     ​6561 ​ &      362880 ​   \\
 +    ... &    ... &      ...  &         ​... ​   \\
 +  \end{supertabular}
 +\end{document}
 +</​latexdoc>​
 +
 +
 +
 +$\Reponse$ ​ Le package [[ctanpkg>​longtable]] est assez semblable au
 +précédent,​ mais en un peu mieux. Il permet notamment d'​avoir
 +(modulo un nombre suffisant de compilations) la même largeur de
 +colonnes dans tout le tableau, même si celui-ci est coupé sur
 +plusieurs pages. Les en-têtes se définissent de manière un peu
 +différente,​ comme dans l'​exemple suivant :
  
-\reponse Le package \pack{longtable} est assez semblable au pr\'​ec\'​edent,​ 
-mais en un peu mieux. Il permet notamment d'​avoir (modulo un nombre suffisant 
-de compilations) la m\^eme largeur de colonnes dans tout le tableau, m\^eme si 
-celui-ci est coup\'​e sur plusieurs pages. ​ 
-Les en-t\^etes se d\'​efinissent de mani\`ere un peu diff\'​erente,​ comme dans 
-l'​exemple suivant :  
  
-\begin{noexemple} +<code latex> 
-\begin{longtable}{|p{0.2\linewidth}| +\begin{longtable}{|p{0.2\linewidth}|p{0.2\linewidth}|p{0.2\linewidth}|}
- p{0.2\linewidth}|p{0.2\linewidth}|}+
    ​\hline    ​\hline
-   Premi\`ere ​colonne & Deuxi\`eme ​Troisi\`eme ​+   Première ​colonne & Deuxième ​Troisième ​
    ​\endfirsthead    ​\endfirsthead
    ​\hline    ​\hline
-   Premi\`ere ​Deuxi\`eme ​Troisi\`eme ​\\ +   Première ​Deuxième ​Troisième ​\\ 
-   ​\multicolumn{3}{|p{0.6666\linewidth}|} +   ​\multicolumn{3}{|p{0.6666\linewidth}|}{Suite...}\\
-        ​{Suite...}\\+
    ​\endhead    ​\endhead
    ​\hline    ​\hline
-   ​\multicolumn{3}{|p{0.6666\linewidth}|} +   ​\multicolumn{3}{|p{0.6666\linewidth}|}{Suite page suivante}
-        ​{Suite page suivante}+
    \\ \hline ​    \\ \hline ​
    ​\endfoot ​    ​\endfoot ​
    ​\hline    ​\hline
-   ​\multicolumn{3}{|p{0.6666\linewidth}|} +   ​\multicolumn{3}{|p{0.6666\linewidth}|}{Fin}\\
-        ​{Fin}\\+
    ​\hline    ​\hline
    ​\endlastfoot ​    ​\endlastfoot ​
Ligne 96: Ligne 135:
    ​2 ​  & ​    ​4 ​ &       ​16 ​ \\    ​2 ​  & ​    ​4 ​ &       ​16 ​ \\
    ​3 ​  & ​    ​9 ​ &       ​81 ​ \\    ​3 ​  & ​    ​9 ​ &       ​81 ​ \\
-   ​... ​      ​...       ​...      +   ​... ​&    ​... &      ​...  ​\\ ​
 \end{longtable} \end{longtable}
-\end{noexemple}+</​code>​ 
 + 
 +<​latexdoc>​ 
 +\documentclass[10pt,​french]{article} 
 + ​\usepackage[utf8]{inputenc} 
 + ​\usepackage{longtable} 
 + ​\pagestyle{empty} 
 + 
 +\begin{document} 
 +\begin{longtable}{|p{0.2\linewidth}|p{0.2\linewidth}|p{0.2\linewidth}|} 
 +   ​\hline 
 +   ​Première colonne & Deuxième & Troisième  
 +   ​\endfirsthead 
 +   ​\hline 
 +   ​Première & Deuxième & Troisième \\ 
 +   ​\multicolumn{3}{|p{0.6666\linewidth}|}{Suite...}\\ 
 +   ​\endhead 
 +   ​\hline 
 +   ​\multicolumn{3}{|p{0.6666\linewidth}|}{Suite page suivante} 
 +   \\ \hline  
 +   ​\endfoot  
 +   ​\hline 
 +   ​\multicolumn{3}{|p{0.6666\linewidth}|}{Fin}\\ 
 +   ​\hline 
 +   ​\endlastfoot  
 +   ​\hline 
 +   ​1 ​  & ​    ​1 ​ &        1  \\ 
 +   ​2 ​  & ​    ​4 ​ &       ​16 ​ \\ 
 +   ​3 ​  & ​    ​9 ​ &       ​81 ​ \\ 
 +   ​1 ​  & ​    ​1 ​ &        1  \\ 
 +   ​2 ​  & ​    ​4 ​ &       ​16 ​ \\ 
 +   ​3 ​  & ​    ​9 ​ &       ​81 ​ \\ 
 +   ​1 ​  & ​    ​1 ​ &        1  \\ 
 +   ​2 ​  & ​    ​4 ​ &       ​16 ​ \\ 
 +   ​3 ​  & ​    ​9 ​ &       ​81 ​ \\ 
 +   ​1 ​  & ​    ​1 ​ &        1  \\ 
 +   ​2 ​  & ​    ​4 ​ &       ​16 ​ \\ 
 +   ​3 ​  & ​    ​9 ​ &       ​81 ​ \\ 
 +   ... &    ... &      ...  \\  
 +\end{longtable} 
 +\end{document} 
 +</​latexdoc>​ 
 + 
 + 
 +{{htmlmetatags>​metatag-keywords=(LaTeX,​grand tableau,​tableau multi-page,​mise en forme,​flottants,​array,​long table) 
 +metatag-og:​title=(Composer des tableaux de plus d'une page?) 
 +metatag-og:​site_name=(FAQ LaTeX francophone) 
 +}}
  
2_composition/tableaux/tableau_sur_plusieurs_pages.1031399216.txt.gz · Dernière modification: 2002/09/07 13:46 par markey
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0