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: | ||
+ | }} | ||