我正在尝试\leqslant
在两个箭头之间插入一个垂直符号,\rightrightarrows
如下图所示
使用以下尴尬的代码获得。正确的做法是什么?
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{graphicx}
\newcommand{\vleq}{\rotatebox[origin=c]{-90}{$\leqslant$}}
\begin{document}
\[
X \overset{g}{\underset{f}\rightrightarrows} Y
\]
\[
X \enspace
\substack{
g \\
\longrightarrow \vspace{-0.5mm}\\
\tiny{\vleq}\vspace{-0.5mm}\\
\longrightarrow \\
f
}
\enspace Y
\]
\end{document}
答案1
像这样?我费了很大劲才建立起这个阵营。
\documentclass{article}
\usepackage{amsmath,amssymb,graphicx}
\newcommand{\smallrotleq}{\rotatebox[origin=c]{-90}{\tiny$\leqslant$}}
\newcommand{\smallrotgeq}{\rotatebox[origin=c]{-90}{\tiny$\geqslant$}}
\newcommand{\arrowstack}[3]{%
% #1 = top, #2 = middle, #3 = bottom
\mathrel{%
\mathop{%
\sbox0{\hbox{$\vcenter{%
\offinterlineskip
\ialign{%
\hfil##\hfil\cr
$\longrightarrow$\cr
\noalign{\kern-0.25ex}
#2\cr
$\longrightarrow$\cr
}%
}$}}%
\dp0=\dimexpr\dp0-0.5ex\relax\box0
}\limits^{#1}_{#3}%
}%
}
\begin{document}
\[
X \arrowstack{g}{\smallrotleq}{f} Y \arrowstack{f}{\smallrotgeq}{g} Z
\]
\end{document}
由于箭头的边界框特殊,因此需要进行一些修正。对于不同的数学字体,可能需要进行修复。