
Я знаю \xrightarrow
и о других вариантах использования amsmath
, но вместо текста над стрелкой я ищу что-то вроде этого:
expression --text--> another expression
Можно ли этого добиться с помощью amsmath (или какой-либо другой библиотеки)?
Если нет, то как я могу это определить сам?
решение1
Я бы использовал более мелкий шрифт, выровненный по вертикали относительно математической оси:
\documentclass{article}
\usepackage{amsmath}
\newcommand{\crightarrow}[1]{%
\relbar\joinrel\joinrel\relbar\mathrel{\vcentertext{#1}}\rightarrow
}
\newcommand{\vcentertext}[1]{%
\vcenter{\hbox{\scriptsize\smallstrut#1}}%
}
\newcommand{\smallstrut}{\vrule height 1.5ex depth 0.5ex width 0pt }
\begin{document}
$a_n \crightarrow{goes to} a$
$a_n \crightarrow{oes} a$
$a_n \crightarrow{bbb} a$
$a_n \crightarrow{ppp} a$
\end{document}
решение2
решение3
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\newlength\tmplength
\newcommand*\textarrow[2][3em]
{\mathrel{\vcenter{\hbox{\settowidth\tmplength{\scriptsize#2}%
\tikz[font=\scriptsize]
\draw[->](0,0)--node[fill=white,midway]{#2}
++({#1+\the\tmplength},0);}}}}
и вы можете использовать
$a \textarrow{foo} b$
$a \textarrow[5em]{bar} b$
$a \textarrow[10em]{baz} b$