Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
3_composition:tableaux:mes_tableaux_sont_moches [2021/05/21 07:11] – Liens vers les versions françaises des documentations de packages. jejust | 3_composition:tableaux:mes_tableaux_sont_moches [2022/11/29 16:16] (Version actuelle) – Code → package dbitouze |
---|
====== Pourquoi les tableaux en LaTeX sont laids? ====== | ====== Pourquoi les tableaux en LaTeX sont laids? ====== |
| |
| Depuis longtemps, plusieurs auteurs notent que les exemples de tableaux donnés par [[wpfr>Leslie_Lamport|Leslie Lamport]] dans son [[1_generalites:documentation:livres:documents_sur_latex|manuel LaTeX]] ne sont pas terribles, qu'ils ont mal inspiré les utilisateurs et ont généralisé une mise en forme assez médiocre des tableaux en <latex>\LaTeX</latex>. Il est parfois même difficile de comprendre le « sens » d'exemples du livre de Lamport. |
| |
Ces dernières années, plusieurs auteurs ont fait valoir que les exemples de tableaux donnés par Lamport | De fait, des tableaux générés avec <latex>\LaTeX</latex> peuvent paraître laids si leurs auteurs n'y consacrent pas un minimum d'attention. Voici ici quelques pistes pour éviter cet écueil. |
dans son [[1_generalites:documentation:livres:documents_sur_latex|manuel LaTeX]] ne sont pas terribles, | |
qu'ils ont mal inspiré les utilisateurs et ont généralisé une mise en forme assez médiocre des tableaux en LaTeX. | |
Pour être honnête, il est même difficile de comprendre le « sens » de nombreux exemples du livre de Lamport. | |
| |
Les critiques se concentrent sur l'utilisation excessive de filets (lignes horizontales et verticales) | ===== L'espacement vertical ===== |
et sur l'espacement vertical que proposent les macros de Lamport. | |
| |
Le problème de l'espacement vertical est évident pour tous et est abordé dans plusieurs paquets | Le problème de l'espacement vertical est évident pour tous et est abordé dans plusieurs extensions. La question « [[3_composition:tableaux:lignes:augmenter_la_largeur_des_lignes_d_un_tableau|Comment améliorer l'espacement entre les lignes d'un tableau ?]] » traite de ce sujet. |
--- voir la question « [[3_composition:tableaux:lignes:augmenter_la_largeur_des_lignes_d_un_tableau|espacement des lignes dans les tableaux]] ». | |
| ===== Le piège des filets ===== |
| |
| L'utilisation des filets (traits horizontaux et verticaux présents dans les tableaux) est souvent abusive. L'[[texdoc>booktabs-fr|introduction de la documentation]] (en français) de l'extension [[ctanpkg>booktabs]] de Simon Fear précise ce point (la [[texdoc>booktabs|version anglaise de la documentation]] pouvant être plus récente). Voir la question « [[3_composition/tableaux/presentation_professionnelle_d_un_tableau|Comment présenter un tableau comme dans les livres ?]] » pour un exemple. |
| |
Le reproche concernant les filets est expliqué dans l'excellente | |
[[texdoc>booktabs-fr|introduction de la documentation]] (en français) de l'extension [[ctanpkg>booktabs]] | |
de Simon Fear((La [[texdoc>booktabs|version anglaise de la documentation]] peut être plus récente.)). | |
Bien entendu, cette extension implémente le style de tableau que recommandé dans cette introduction. | |
Les mêmes règles sont également implémentées dans la classe [[ctanpkg>memoir]]((Il existe un [[https://github.com/jejust/memoir-fr|projet de traduction]] de la documentation de ''Memoir''.)). | Les mêmes règles sont également implémentées dans la classe [[ctanpkg>memoir]]((Il existe un [[https://github.com/jejust/memoir-fr|projet de traduction]] de la documentation de ''Memoir''.)). |
| |
Par défaut, LaTeX a également tort de mettre les légendes **sous** le tableau. | ===== La position de la légende ===== |
Étant donné qu'un tableau peut s'étendre sur plusieurs pages, les règles traditionnelles de typographie | |
placent la légende **au-dessus** du tableau. | Par défaut, <latex>\LaTeX</latex> a également tort de mettre les légendes **sous** le tableau. Étant donné qu'un tableau peut s'étendre sur plusieurs pages, les règles traditionnelles de typographie placent la légende **au-dessus** du tableau. Si vous cherchez à mettre la légende au-dessus du tableau avec la commande ''\caption'', la position finale sera décalée de 10pt vers le bas, et sera trop proche du tableau. Heureusement, l'extension [[ctanpkg>topcapt]] résout le problème (ci-dessous à droite). |
Si vous cherchez à mettre la légende au-dessus du tableau avec la commande ''\caption'', | |
la position finale sera décalée de 10pt vers le bas, et sera trop proche du tableau. | |
Heureusement, l'extension [[ctanpkg>topcapt]] résout le problème (ci-dessous à droite). | |
| |
<WRAP column 45ex> | <WRAP column 45ex> |
</WRAP> | </WRAP> |
<WRAP column 45ex> | <WRAP column 45ex> |
**Légende avec ''topcapt''** | **Légende avec [[ctanpkg>topcapt]]** |
| |
<code latex> | <code latex> |
<WRAP clear/> | <WRAP clear/> |
| |
| Les classes [[ctanpkg>KOMA-script|KOMA-script]] disposent d'une commande similaire, ''\captionabove'' ; elles ont également une option de classe ''tablecaptionabove'' qui fait en sorte que ''\caption'' signifie ''\captionabove'' dans les environnements de tableau. L'extension [[ctanpkg>caption]] peut être chargée avec une option qui a le même effet : |
| |
Les classes fournies par [[ctanpkg>KOMA-script|KOMA-script]] disposent d'une commande similaire, | |
''\captionabove'' ; elles ont également une option de classe ''tablecaptionabove'' qui fait en sorte que | |
''\caption'' signifie ''\captionabove'', dans les environnements de tableau. | |
L'extension [[ctanpkg>caption]] peut être chargée avec une option qui a le même effet: | |
<code latex> | <code latex> |
\usepackage[tableposition=top]{caption} | \usepackage[tableposition=top]{caption} |
</code> | </code> |
Cela peut aussi être changé après le chargement du paquet, avec ''\captionsetup'': | |
| Cela peut aussi être changé après le chargement de l'extension, avec ''\captionsetup'' : |
| |
<code latex> | <code latex> |
\captionsetup[table]{position=above} | \captionsetup[table]{position=above} |
</code> | </code> |
(Notez que les deux « options de position » sont différentes: ''top'' (en haut) dans un cas, et ''above'' (au-dessus) | |
dans l'autre, mais dans ce contexte, elles signifient la même chose). | Notez que les deux « options de position » sont différentes : ''top'' (en haut) dans un cas, et ''above'' (au-dessus) dans l'autre, mais dans ce contexte, elles signifient la même chose. |
| |
<note tip> | <note tip> |
Faire le travail soi-même serait assez facile: [[ctanpkg>topcapt]] se contente en fait de permuter | Faire soi-même le travail de [[ctanpkg>topcapt]] peut être assez facile : celle-ci se contente en fait de permuter les valeurs des paramètres <latex>\LaTeX</latex> ''\abovecaptionskip'' (valeur par défaut ''10pt'') et ''\belowcaptionskip'' (valeur par défaut: ''0pt''). Voici donc un exemple de modification... supposant que les valeurs n'ont pas été modifiées par ailleurs : |
les valeurs des paramètres LaTeX ''\abovecaptionskip'' (valeur par défaut ''10pt'') et ''\belowcaptionskip'' | |
(valeur par défaut: ''0pt''). Donc : | |
| |
<code latex> | <code latex> |
\end{table} | \end{table} |
</code> | </code> |
ferait ce qu'il faut (si les longueurs n'ont pas été modifiées; les extensions et classes mentionnées | |
ci-dessus sont plus prudents!) | |
</note> | </note> |
| |
metatag-og:site_name=(FAQ LaTeX francophone) | metatag-og:site_name=(FAQ LaTeX francophone) |
}} | }} |
| |