答案1
(我已编辑此答案来提及宏,它具有与和\overunderset
的嵌套组合相同的问题。)\overset
\underset
它似乎被\rightleftarrows
编程为认为自己有一个突出的组件以下基线。这可以通过应用\smash[b]
来解决\rightleftarrows
。
如果文档中有多起这样的情况,那么可能值得您花时间定义一个名为的宏,\myunderset
它会\smash[b]
自动应用于其第二个参数。
OP 的问题也适用于,它(毫不奇怪地)结合了和\overunderset
的操作。同样,定义一个名为 的变体宏(适用于第三个参数)可能会有所帮助。\overset
\underset
\myoverunderset
\smash[b]
请注意我不是提倡不加区别地使用\myunderset
和\myoverunderset
。请仅在以下情况下使用它们\rightleftarrows
。
\documentclass{article}
\usepackage{amsmath} % for \overset, \underset, \overunderset, and \smash[b] macros
\usepackage{amssymb} % for \rightleftarrows macro
\newcommand\myunderset[2]{\underset{#1}{\smash[b]{#2}}}
\newcommand\myoverunderset[3]{\overunderset{#1}{#2}{\smash[b]{#3}}}
\begin{document}
$X \overset{A}{\underset{B}{\rightleftarrows}} Y$ vs.\
$X \overunderset{A}{B}{\rightleftarrows} Y$ vs.\
$X \overset{A}{\underset{B}{\smash[b]{\rightleftarrows}}} Y$ vs.\
$X \overset{A}{\myunderset{B}{\rightleftarrows}} Y$ vs.\
$X \myoverunderset{A}{B}{\rightleftarrows} Y$
\end{document}