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


5.7 Flottants

Certains éléments typographiques, tels que les figures et les tableaux, ne peuvent pas être à cheval sur plusieurs pages. Ils doivent être composés en dehors du flux normal du texte, par exemple flottant au sommet d’une page ultérieure

LaTeX sait gérer plusieurs classes de matière flottante. Il y a deux classes définies par défaut, figure (voir figure) et table (voir table), mais vous pouvez créer une nouvelle classes avec le paquetage float.

Au sein d’une même classe flottante LaTeX respecte l’ordre, de sorte que la première figure dans le code source d’un document est toujours composée avant la deuxième figure. Cependant, LaTeX peut mélanger les classes, ainsi il peut se produire qu’alors que le premier tableau apparaît dans le code source avant la première figure, il apparaisse après elle dans le fichier de sortie.

Le placement des flottants est l’objet de paramètres, donnés ci-dessous, qui limitent le nombre de flottants pouvant apparaître au sommet d’une page, et au bas de page, etc. Si à cause d’un nombre trop important de flottants mis en queue ces limites les empêchent de tenir tous dans une seule page, alors LaTeX place ce qu’il peut et diffère le reste à la page suivante. De la sorte, les flottants peuvent être composés loin de leur place d’origine dans le code source. En particulier, un flottant qui prend beaucoup de place peut migrer jusqu’à la fin du document. Mais alors, parce que tous les flottants dans une classe doivent apparaître dans le même ordre séquentiel, tous les flottants suivant dans cette classe apparaissent aussi à la fin.

En plus de changer les paramètres, pour chaque flottant vous pouvez peaufiner l’endroit où l’algorithme de placement des flottants essaie de le placer en utilisant sont argument placement. Les valeurs possibles sont une séquence des lettres ci-dessous. La valeur par défaut pour à la fois figure et table, dans les deux classes de document article et book, est tbp.

t

(pour Top) — au sommet d’une page de texte.

b

(pour Bottom) — au bas d’une page de texte. (Cependant, b n’est pas autorisé avec des flottants en pleine-largeur (figure*) en cas de sortie à double-colonne. Pour améliorer cela, on peut utiliser les paquetages stfloats ou dblfloatfix, mais voyez la discussion sur les avertissements dans la FAQ : http://www.tex.ac.uk/cgi-bin/texfaq2html?label=2colfloat.

h

(pour « Here », c.-à-d.« Ici » en anglais) — à la position du texte où l’environnement figure apparaît. Cependant, h n’est pas autorisé en soi-même ; t est ajouté automatiquement.

Pour forcer à tout prix un flottant à apparaître « ici », vous pouvez charger le paquetage float et le spécificateur H qui y est défini. Pour plus ample discussion, voir l’entrée de FAQ à http://www.tex.ac.uk/cgi-bin/texfaq2html?label=figurehere.

p

(pour Page de flottants) — sur une page de flottants séparée, qui est une page ne contenant pas de texte, seulement des flottants.

!

Utilisé en plus de l’un des spécificateurs précédents ; pour ce flottant seulement, LaTeX ignore les restrictions à la fois sur le nombre de flottants qui peuvent apparaître et les quantités relatives de texte flottant et non-flottant sur la page. Le spécificateur ! ne signifie pas « mets le flottant ici » ; voir plus haut.

Note : l’ordre dans lequel les lettres apparaissent au sein du paramètre placement ne change pas l’ordre dans lequel LaTeX essaie de placer le flottant ; par exemple btp a le même effet que tbp. Tout ce que placement fait c’est que si une lettre n’est pas présente alors l’algorithme n’essaie pas cet endroit. Ainsi, la valeur par défaut de LaTeX étant tbp consiste à essayer toutes les localisations sauf celle de placer le flottant là où il apparaît dans le code source.

Pour empêcher LaTeX de rejeter tous les flottants à la fin du document ou d’un chapitre, vous pouvez utiliser la commande \clearpage pour commencer une nouvelle page et insérer tous les flottants pendants. Si un saut de page est indésirable alors vous pouvez charger le paquetage afterpage et commettre le code \afterpage{\clearpage}. Ceci aura l’effet d’attendre la fin de la page courante et ensuite de faire passer tous les flottants encore non placés.

LaTeX peut composer un flottant avant l’endroit où il apparaît dans le code source (quoique sur la même page de sortie) s’il y a un spécificateur t au sein du paramètre placement. Si ceci n’est pas désiré, et que supprimer t n’est acceptable car ce spécificateur empêche le flottant d’être placé au sommet de la page suivante, alors vous pouvez empêcher cela soit en utilisant le paquetage flafter ou en utilisant ou en utilisant la commande \suppressfloats[t], ce qui entraîne le déplacement vers la page suivante des flottants qui auraient du être placés au sommet de la page courante.

Voici les paramètres en relation aux fractions de pages occupées par du texte flottant et non flottant (on peut les changer avec \renewcommand{paramètre}{nombre décimal entre 0 et 1}) :

La fraction maximale de page autorisée à être occupées par des flottants au bas de la page ; la valeur par défaut est ‘.3’.

\floatpagefraction

La fraction minimale d’une page de flottants qui doit être occupée par des flottants ; la valeur par défaut ‘.5’.

\textfraction

La fraction minimale d’une page qui doit être du texte ; si des flottants prennent trop d’espace pour préserver une telle quantité de texte, alors les flottants sont déplacés vers une autre page. La valeur par défaut est ‘.2’.

\topfraction

Fraction maximale au sommet d’une page page que peut être occupée avant des flottants ; la valeur par défaut est ‘.7’.

Les paramètres en relation à l’espace vertical autour des flottants (on peut les changer avec \setlength{paramètre}{expression longueur}) :

\floatsep

Espace entre les flottants au sommet ou au bas d’une page ; par défaut vaut ‘12pt plus2pt minus2pt’.

\intextsep

Espace au dessus et au dessous d’un flottant situé au milieu du texte principal ; vaut par défaut ‘12pt plus2pt minus2pt’ pour les styles à ‘10pt’ et à ‘11pt’, et ‘14pt plus4pt minus4pt’ pour ‘12pt’.

\textfloatsep

Espace entre le dernier (premier) flottant au sommet (bas) d’une page ; par défaut vaut ‘20pt plus2pt minus4pt’.

Paramètres en relation avec le nombre de flottant sur une page (on peut les changer avec \setcounter{ctrname}{natural number}) :

\bottomnumber

Nombre maximal de flottants pouvant apparaître au bas d’une page de texte ; par défaut 1.

\topnumber

Nombre maximal de flottants pouvant apparaître au sommet d’une page de texte ; par défaut 2.

\totalnumber

Nombre maximal de flottants pouvant apparaître sur une page de texte ; par défaut 3.

L’article principal de FAQ TeX en rapport avec les flottants http://www.tex.ac.uk/cgi-bin/texfaq2html?label=floats contient des suggestions pour relâcher les paramètres par défaut de LaTeX de sorte à réduire les problèmes de flottants rejetés à la fin. Une explication complète de l’algorithme de placement des flottants se trouve dans l’article de Frank Mittelbach « How to influence the position of float environments like figure and table in LaTeX? » (http://latex-project.org/papers/tb111mitt-float.pdf).


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