Comment ajuster la longueur d’une flèche par rapport à celle d’un texte ?#
1. Avec l’extension mathtools#
1.1. Flèche simple#
La commande \xrightarrow
de l’extension mathtools
(ou amsmath) permet de générer des flèches dont la longueur
est fonction de celles du texte qui est placé au-dessus et au-dessous
(et de la chaîne la plus longue lorsqu’il y a à la fois un texte au-dessus
et un autre au-dessous). En voici un exemple :
\documentclass{article}
\usepackage[T1]{fontenc} % Encodage T1 (adapté au français)
\usepackage{lmodern} % Caractères plus lisibles
\pagestyle{empty} % N'affiche pas de numéro de page
\usepackage{mathtools}
\begin{document}
\Large
$ \xrightarrow[\text{au-dessous (plus long)}]{\text{au-dessus}}
\xrightarrow[\text{au-dessous}]{\text{au-dessus (pas plus court)}} $
\end{document}
Comme vous pouvez l’imaginer, il y a une commande \xleftarrow
équivalente
et même une commande \xleftrightarrow
(cette dernière n’existant pas
dans amsmath) :
\documentclass{article}
\usepackage[T1]{fontenc} % Encodage T1 (adapté au français)
\usepackage{lmodern} % Caractères plus lisibles
\pagestyle{empty} % N'affiche pas de numéro de page
\usepackage{mathtools}
\begin{document}
\Large
$ \xleftarrow[\text{au-dessous}]{\text{au-dessus}} \xleftrightarrow[\text{%
au-dessous}]{\text{au-dessus}} $
\end{document}
1.2. Flèche double#
De la même façon qu’il existe \rightarrow
pour la flèche simple
(\(\rightarrow\)) et \Rightarrow
, avec une majuscule, pour la flèche double
(\(\Rightarrow\)), vous pouvez imaginer appeler \xRightarrow
pour avoir
une flèche double longue. Ceci n’est cependant vrai que
pour l’extension mathtools et pas amsmath :
\documentclass{article}
\usepackage[T1]{fontenc} % Encodage T1 (adapté au français)
\usepackage{lmodern} % Caractères plus lisibles
\pagestyle{empty} % N'affiche pas de numéro de page
\usepackage{mathtools}
\begin{document}
\Large
$ \xLeftarrow[\text{au-dessous}]{\text{au-dessus}}
\xRightarrow[\text{au-dessous}]{\text{au-dessus}}
\xLeftrightarrow[\text{au-dessous}]{\text{au-dessus}} $
\end{document}
1.3. Flèche à deux pointes#
Pour une flèche à deux pointes, vous devrez écrire vos propres commandes :
\documentclass{article}
\usepackage[T1]{fontenc} % Encodage T1 (adapté au français)
\usepackage{lmodern} % Caractères plus lisibles
\pagestyle{empty} % N'affiche pas de numéro de page
\usepackage{mathtools}
\newcommand\dhrightarrow{%
\mathrel{\ooalign{$\rightarrow$%
\cr$\mkern3.5mu\rightarrow$}}
}
\newcommand\dhxrightarrow[2][]{%
\mathrel{\ooalign{$\xrightarrow[%
#1\mkern4mu]{#2\mkern4mu}$\cr%
\hidewidth$\rightarrow%
\mkern4mu$}}
}
\begin{document}
\begin{alignat*}{3}
A \rightarrow B &&\qquad
A \xrightarrow[C]{D} B &&\qquad
A \xrightarrow{\text{Long texte%
\dots}} B
& \\
A \dhrightarrow B &&\qquad
A \dhxrightarrow[C]{D} B &&\qquad
A \dhxrightarrow{\text{Long texte%
\dots}} B
& \\
\end{alignat*}
\end{document}
Sources