LaTeX/Éléments flottants et figures
Dans le précédent chapitre, l'importation des images a été abordée. Cependant, avoir juste une image coincée entre des paragraphes ne semble pas très professionnel. Pour les novices, nous voulons une manière d'ajouter des légendes, et pouvoir établir des références croisées. Ce dont nous avons besoin est une manière de définir des "figures". Il serait également agréable si Latex pouvait appliquer des principes semblables à ceux utilisés quand il traite le texte, à l'arrangement des images, afin que tout paraisse au mieux. C'est ici que les éléments "flottants" rentrent en jeu.
Les flottants.
Les éléments flottants se rapportent à tout ce qui, dans un document, ne peut pas être inséré dans une page. Ils se ramènent fondamentalement aux tables et aux figures. Ils exigent un traitement particulier, et le concept de "flottant" était la solution pour traiter de tels éléments, tout en maintenant la présentation de document aussi « belle » que possible.
Le problème le plus courant est la manifestation d'un manque de place sur le reste d'une page donnée pour placer une figure particulière. Pour surmonter cela, LaTeX fera nager celle-ci jusqu'à la page suivante, tout en remplissant la page courante avec le corps du texte. Comparez cela avec ce qui se produit sous "MS Word", par exemple. Si une image est ajoutée mais est trop grande pour s'adapter à la page courante, il la placera sur la prochaine page, mais laissera un grand espace, au lieu de réarranger le texte aux alentours pour remplir l'espace. Cela exige beaucoup de manipulations délicates pour rectifier, alors que LaTeX prend en charge tout ceci automatiquement.
Les figures.
Pour créer une figure, vous devez employer l'environnement "figure" (La Palice).
 \begin{figure}["paramètre indiquant le placement"] 
 ... "corps de la figure" ... 
Dans la section précédente, j'expliquais comment des éléments flottants pouvaient être utilisés pour permettre au Latex de manipuler des figures, tout en maintenant la meilleure présentation. Cependant, il se peut que vous soyez en désaccord avec par exemple le positionnement des figures. Dans ce cas, il existe un paramètre du prescripteur de placement, qui vous donne un plus grand degré de contrôle de placement des éléments flottants.
Les "permissions de placement" vous permettent d'indiquer les options que vous souhaitez rendre disponibles au Latex. Ce sont simplement des possibilités, et Latex décidera quand il composera votre document lequel de vos prescripteurs fournis sera le meilleur.
Dans le cas ou vous avez beaucoup de flottants pour peu de texte et que LaTeX éloigne les flottants de leur contexte, la commande codice_1 du paquet codice_2 permet de vider le tampon de flottants actuellement stockés, et donc de positionner tous les flottants déjà déclarés avant de poursuivre le document.
Les tableaux.
Bien que les tableaux aient été déjà abordés, nous n'avions discuté que de la syntaxe interne. L'environnement codice_3 qui a été employé pour construire les tableaux n'est pas un élément flottant par défaut. Par conséquent, si vous souhaitez laisser flotter des tableaux vous devez envelopper l'environnement codice_3 avec un environnement codice_5, comme ceci:
 ... données du tableau ...
Vous avez peut-être l'impression que tout cela est un peu trop enveloppé, mais de telles distinctions sont nécessaires, parce que vous ne voulez pas forcément que tous les tableaux soient traités comme des flottants.
Les légendes.
C'est toujours une bonne habitude d'ajouter une légende à n'importe quelle figure ou tableau. Heureusement, c'est très simple avec LaTeX. Tout ce que vous avez besoin de faire est d'employer la commande codice_6 dans l'environnement de l'élément flottant. En raison de la façon dont Latex travaille avec les structures logiques, il maintiendra automatiquement la numérotation des figures, ainsi vous n'avez nul besoin de l'inclure dans le texte de la légende.
La position de la légende est traditionnellement sous l'élément flottant. Cependant, il vous appartient d'insérer la commande de légende après le contenu même du flotteur (mais toujours dans l'environnement). Si vous le placez avant, alors la légende apparaîtra au-dessus du flotteur. Essayez l'exemple suivant pour montrer cet effet (voyez [tutorial6/legende.tex legende.tex] et [tutorial6/legende.pdf legende.pdf])
 \centering
 \centering
Le package babel détermine le nom générique donné aux tableaux et aux figures dans la commande caption. Par défaut avec l'option \usepackage[french]{babel}, on obtient 'FIG -' et 'TAB -'. On peut modifier ces paramètres en ajoutant dans le préambule après le package babel les deux lignes suivantes : 
ou 
Les étiquettes et les références croisées.
C'est une bonne occasion d'introduire les "étiquettes". Leur utilité en Latex est d'agir comme un marqueur qui peut être référencé à n'importe quel endroit de votre document. Il est très fréquent de devoir se rapporter à chacune des figures, dans le corps du texte. Cependant, vous n'aimeriez pas garder en mémoire leur numéro, ainsi vous pouvez employer une étiquette à la place, et laissez Latex la remplacer automatiquement par le numéro correct de la figure.
Pour ajouter une étiquette, vous devez inclure la commande suivante:
 codice_7"marqueur"codice_8.
Pour ensuite référencer une étiquette : codice_9"marqueur"codice_8.
Une autre solution serait d'utiliser une référence de page: codice_11"marqueur"codice_8.
 \centering
 La figure~\ref{toucan} montre une photographie de toucan.
Quand une étiquette est déclarée dans un environnement flottant, la commande codice_13 renvoie le numéro de figure/tableau correspondant (bien que, celui-ci puisse apparaître après la légende). Quand celle-ci est déclarée en dehors, la commande renvoie le numéro de section.
Le tilde (~) dans l'exemple ci-dessus est un symbole spécial en Latex. Il représente un espace insécable. Il est utile ici parce qu'il garde « figure » et le numéro quel qu'il soit auquel \ref se rapporte comme un tout, et ne les coupera pas sur une ligne ou une page lors de la production du document.
Enveloppement des figures.
Bien que ce ne soit pas normalement utile dans le cadre de l'écriture d'un ouvrage scolaire, un auteur pourrait préférer que certains éléments flottants ne brisent pas le déroulement du texte, mais qu'au lieu de cela, permettent au texte de s'enrouler autour de ceux-ci. Évidemment, cet effet semble réalisable uniquement lorsque la figure en question est sensiblement plus étroite que la largeur du texte. Le paquet codice_14 a été conçu pour effectuer cette tâche.
Pour employer codice_14, vous devez d'abord ajouter codice_16 au préambule. Ceci vous donne alors accès à la commande codice_17"alignement"codice_18"largeur"codice_8.
"alignement" peut être soit "l" pour la gauche, ou "r" pour la droite.
La "largeur" est évidemment la largeur de la figure. Un exemple:
 \centering
Notez que l'environnement "wrapfigure" est en fait un élément non flottant. Cela signifie qu'il peut vous demander un certain soin afin que votre figure insérée ne passe pas au delà des coupures de page. L'environnement peut être rendu flottant en utilisant une majuscule ("L" ou "R") pour "alignement".
Sous-figures.
Une extension utile est codice_20, qui remplace les extensions codice_21 et codice_22 depuis la distribution TeXLive 2011. Ce paquet donne au rédacteur la possibilité d'insérer des figures dans des figures. Les sous-figures ont leur propre légende, disposent aussi d'une légende globale facultative. Voici un exemple qui en illustre l'utilisation.
 \begin{figure}[htp]
 \centering
Les extensions codice_21 ou codice_22 utilisaient une commande codice_25 ou codice_26 au lieu d'un environnement subfigure, mais le principe était similaire.