Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| composition:tableaux:fixer_la_largeur_d_un_tableau [2016/10/16 07:57] – jejust | 3_composition:tableaux:fixer_la_largeur_d_un_tableau [2022/10/10 14:47] (Version actuelle) – Usage de ⟨...⟩ dbitouze | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | \question{Comment fixer la largeur d'un tableau ?} %7.20 | + | ====== |
| - | \reponse L' | + | |
| - | seul l'espace entre les colonnes | + | Fondamentalement, |
| - | à confondre avec \param{\\tabcolsep} qui est l' | + | pendant sa mise en forme, pour obtenir à la fin la largeur totale désirée. |
| - | d' | + | On peut: |
| - | utiliser \texcode{\cmd{extracolsep}\{\cmd{stretch}\{1\}\}} ainsi | + | * étirer les espaces entre les colonnes ; |
| - | % | + | * étirer certaines des colonnes du tableau. |
| - | \begin{noexemple} | + | |
| + | Voici comment appliquer ces deux possibilités. | ||
| + | |||
| + | |||
| + | ===== En jouant sur les espaces intercolonnes ===== | ||
| + | |||
| + | ==== Avec les fonctions de base de LaTeX ==== | ||
| + | |||
| + | Les fonctionnalités de base de < | ||
| + | les espaces: l' | ||
| + | la largeur totale désirée pour le tableau, sous la forme d'une longueur comme '' | ||
| + | Cet argument s' | ||
| + | |||
| + | Pour que cela fonctionne, il faut également utiliser la commande '' | ||
| + | (celui qui décrit la mise en forme des colonnes), à l' | ||
| + | Voici comment ça se présente: | ||
| + | <code latex> | ||
| + | \begin{tabular*}{\columnwidth}{@{\extracolsep{\fill}}lllr} | ||
| + | </ | ||
| + | |||
| + | La commande | ||
| + | situés | ||
| + | ajoutez '' | ||
| + | |||
| + | On peut également utiliser '' | ||
| + | |||
| + | <note important> | ||
| + | '' | ||
| + | de part et d' | ||
| + | </ | ||
| + | |||
| + | <WRAP column 58ex> | ||
| + | <code latex> | ||
| \begin{tabular*}{0.5\linewidth}{ | \begin{tabular*}{0.5\linewidth}{ | ||
| @{\extracolsep{\stretch{1}}} | @{\extracolsep{\stretch{1}}} | ||
| Ligne 15: | Ligne 47: | ||
| } | } | ||
| \hline | \hline | ||
| - | | + | |
| \hline | \hline | ||
| atoi() | atoi() | ||
| Ligne 23: | Ligne 55: | ||
| (attention, d' | (attention, d' | ||
| printf() | printf() | ||
| - | | + | |
| sqrt() | sqrt() | ||
| bibliothèque mathématique) \\ | bibliothèque mathématique) \\ | ||
| \hline | \hline | ||
| \end{tabular*} | \end{tabular*} | ||
| - | \end{noexemple} | + | </ |
| - | % | + | </ |
| - | ou (avec le package | + | <WRAP column 30ex> |
| - | % | + | < |
| - | \begin{noexemple} | + | |
| + | | ||
| + | l | ||
| + | p{8cm} | ||
| + | @{} | ||
| + | } | ||
| + | \hline | ||
| + | Fonction | ||
| + | \hline | ||
| + | atoi() & transforme une chaîne de caractères | ||
| + | en entier | ||
| + | fscanf() | ||
| + | l' | ||
| + | (attention, d' | ||
| + | printf() | ||
| + | caractères \\ | ||
| + | sqrt() | ||
| + | bibliothèque mathématique) \\ | ||
| + | \hline | ||
| + | \end{tabular*} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP clear /> | ||
| + | |||
| + | |||
| + | ==== Avec l' | ||
| + | |||
| + | Une autre possibilité, | ||
| + | |||
| + | <WRAP column 58ex> | ||
| + | <code latex> | ||
| + | \usepackage{array} | ||
| + | ... | ||
| \begin{tabular*}{0.5\linewidth}{ | \begin{tabular*}{0.5\linewidth}{ | ||
| !{\extracolsep{\stretch{1}}} | !{\extracolsep{\stretch{1}}} | ||
| Ligne 39: | Ligne 104: | ||
| } | } | ||
| \hline | \hline | ||
| - | | + | |
| \hline | \hline | ||
| atoi() | atoi() | ||
| Ligne 47: | Ligne 112: | ||
| (attention, d' | (attention, d' | ||
| printf() | printf() | ||
| - | | + | |
| sqrt() | sqrt() | ||
| bibliothèque mathématique) \\ | bibliothèque mathématique) \\ | ||
| \hline | \hline | ||
| \end{tabular*} | \end{tabular*} | ||
| - | \end{noexemple} | + | </ |
| - | % | + | </ |
| - | \texcode{!\marg{code}} est équivalent | + | <WRAP column 30ex> |
| - | différence près que la séparation | + | < |
| - | supprimée. | + | \documentclass{article} |
| - | tableau, soit on utilise cette fonction \texcode{!\marg{code}}. | + | |
| + | \usepackage{lmodern} | ||
| + | \usepackage{array} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| + | \begin{tabular*}{0.5\linewidth}{ | ||
| + | | ||
| + | l | ||
| + | p{8cm} | ||
| + | } | ||
| + | \hline | ||
| + | Fonction | ||
| + | \hline | ||
| + | atoi() | ||
| + | en entier \\ | ||
| + | fscanf() | ||
| + | l' | ||
| + | (attention, d' | ||
| + | printf() | ||
| + | caractères \\ | ||
| + | sqrt() | ||
| + | bibliothèque mathématique) \\ | ||
| + | \hline | ||
| + | \end{tabular*} | ||
| + | \end{document} | ||
| + | </ | ||
| + | </ | ||
| + | <WRAP clear /> | ||
| + | |||
| + | '' | ||
| + | la séparation | ||
| + | cette séparation des deux côtés du tableau, soit on utilise cette fonction | ||
| + | |||
| + | |||
| + | |||
| + | ===== En jouant sur la largeur des colonnes ===== | ||
| + | |||
| + | Dans les cas simples, il est bien sûr possible de le faire « à la main », | ||
| + | en fixant la largeur des colonnes: | ||
| + | |||
| + | <code latex> | ||
| + | \begin{tabular}{p{2cm}p{3cm}} | ||
| + | ... | ||
| + | \end{tabular} | ||
| + | </code> | ||
| + | |||
| + | ou même en faisant dépendre la largeur des colonnes de la largeur de la page: | ||
| + | |||
| + | <code latex> | ||
| + | \begin{tabular}{p{.25\textwidth}p{.33\textwidth}} | ||
| + | ... | ||
| + | \end{tabular} | ||
| + | </ | ||
| + | |||
| + | Mais diverses extensions ont été développées pour s'en occuper pour vous. | ||
| + | |||
| + | |||
| + | ==== Avec l' | ||
| + | |||
| + | L' | ||
| + | Une colonne de format '' | ||
| + | elle est capable de s' | ||
| + | Il n'est pas nécessaire de passer un argument '' | ||
| + | |||
| + | S'il y a plus d'une colonne '' | ||
| + | entre elles. | ||
| + | |||
| + | |||
| + | Voici un exemple qui donne un tableau s' | ||
| + | et divisé en deux colonnes de largeur égale: | ||
| + | |||
| + | <WRAP column 50ex> | ||
| + | <code latex> | ||
| + | \usepackage{tabularx} | ||
| + | ... | ||
| - | \reponse Les packages \pack{tabularx} et \pack{easytable} permettent | ||
| - | de faire cela. Avec l' | ||
| - | peut utiliser un nouveau type de colonne: \texcode{X} qui ressemble à | ||
| - | une colonne de type \texcode{p\marg{larg}}, | ||
| - | pas nécessaire de passer l' | ||
| - | s' | ||
| - | % | ||
| - | \begin{noexemple} | ||
| \begin{tabularx}{\linewidth}{|X|X|} | \begin{tabularx}{\linewidth}{|X|X|} | ||
| | | ||
| Ligne 73: | Ligne 205: | ||
| | | ||
| \end{tabularx} | \end{tabularx} | ||
| - | \end{noexemple} | + | </ |
| - | % | + | </ |
| - | donne | + | <WRAP column 30ex> |
| - | % | + | < |
| - | \begin{flushleft} | + | \documentclass{article} |
| + | | ||
| + | | ||
| + | \usepackage{tabularx} | ||
| + | \usepackage[french]{babel} | ||
| + | \pagestyle{empty} | ||
| + | |||
| + | \begin{document} | ||
| \begin{tabularx}{\linewidth}{|X|X|} | \begin{tabularx}{\linewidth}{|X|X|} | ||
| | | ||
| Ligne 84: | Ligne 223: | ||
| | | ||
| \end{tabularx} | \end{tabularx} | ||
| - | \end{flushleft} | + | \end{document} |
| - | % | + | </ |
| - | Cet exemple donnera | + | </ |
| - | en deux colonnes | + | <WRAP clear /> |
| + | |||
| + | |||
| + | ==== Avec l' | ||
| + | |||
| + | L' | ||
| + | l' | ||
| + | '' | ||
| + | et justifiée des colonnes qui se partagent l' | ||
| + | L' | ||
| + | sur une feuille de papier de largeur infinie) | ||
| + | Elle fait quelques vérifications pour que les entrées vraiment grandes n' | ||
| + | (il y a une notion | ||
| + | plus petites qu'un minimum spécifié. | ||
| + | |||
| + | Bien sûr, tout ce travail signifie que l' | ||
| + | donc tout ce qui produit des effets de bord (par exemple, un compteur qui serait utilisé | ||
| + | pour compter les lignes) devient inévitablement peu fiable, et ne devrait même pas être essayé. | ||
| + | |||
| + | |||
| + | ==== Avec d' | ||
| + | |||
| + | L' | ||
| + | Lisez bien [[texdoc> | ||
| - | \reponse Il est \'egalement possible de sp\' | + | L'extension [[ctanpkg> |
| - | colonne (\texcode{p\marg{larg}}). | + | |
| - | habilement les longueurs, on peut fixer la largeur du tableau et de | + | |
| - | chacune de ses colonnes. | + | |
| - | \reponse Le package \pack{tabulary} fonctionne un peu comme | + | ----- |
| - | \pack{tabularx}, | + | //Sources :// |
| - | \texcode{R}, \texcode{J} qui permettent respectivement d' | + | * [[faquk> |
| - | gauche, de centrer, d' | + | * [[https:// |
| - | d'une colonne. De plus, la largeur des colonnes est proportionnelle à | + | * [[https:// |
| - | la longueur de la plus grande entrée (de chaque colonne). | + | |
| - | \endinput | + | {{htmlmetatags> |
| + | metatag-og: | ||
| + | metatag-og: | ||
| + | }} | ||

