Comment ajuster la longueur d’une flèche par rapport à celle d’un texte ?

La commande \xrightarrow de l’extension 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 :

<WRAP column>

$\xrightarrow[\text{au-dessous (plus long)}]{\text{au-dessus}}$

<latex> \LARGE $xrightarrow[text{au-dessous (plus long)}]{text{au-dessus}}$ </latex> </WRAP> <WRAP column>

$\xrightarrow[\text{au-dessous}]{\text{au-dessus (pas plus court)}}$

<latex> \LARGE $xrightarrow[text{au-dessous}]{text{au-dessus (pas plus court)}}$ </latex> </WRAP> <WRAP clear />

Comme vous l’imaginez, il y a une commande \xleftarrow équivalente:

$\xleftarrow[\text{au-dessous}]{\text{au-dessus}}$

<latex> \LARGE $xleftarrow[text{au-dessous}]{text{au-dessus}}$ </latex>

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… mais pour que ça marche, vous devrez charger le package mathtools:

\usepackage{mathtools}
$\xRightarrow[\text{au-dessous}]{\text{au-dessus}}$

Flèche à deux pointes

Pour une flèche à deux pointes, vous devrez écrire vos propres commandes:

\usepackage{amsmath}

\newcommand\dhrightarrow{%
  \mathrel{\ooalign{$\rightarrow$\cr%
  $\mkern3.5mu\rightarrow$}}
}

\newcommand\dhxrightarrow[2][]{%
  \mathrel{\ooalign{$\xrightarrow[#1\mkern4mu]{#2\mkern4mu}$\cr%
  \hidewidth$\rightarrow\mkern4mu$}}
}

Source: Two-headed version of \xrightarrow.