带缩放 stackrel 的 xrightarrow 上的中心标签/文本

带缩放 stackrel 的 xrightarrow 上的中心标签/文本

我经常在表格中使用以下类型的构造,以创建由右箭头分隔的从左到右的顺序序列 - 我使用 stackrel 和 longrightarrow 的组合来完成基本的“外观”:

\begin{center}
\begin{tabular}{ccccc}
\textbf{1} &
$\stackrel{\phi_{1}}{\longrightarrow}$ &
\textbf{2} & $\stackrel{\phi_{2}}{\longrightarrow}$ &
\textbf{3} 
\end{tabular}
\end{center}

生成以下内容:

在此处输入图片描述

然而,出于各种审美原因,我有兴趣让 longrightarrow 更长一些。我的方法是使用 xrightarrow。诀窍是,我想要 xrightarrow 的固定长度(而不是动态长度)。如果我尝试类似

\newcommand*{\barrow}{\xrightarrow{\hspace*{0.8cm}}}
\begin{center}
\begin{tabular}{ccccc}
\textbf{1} &
$\barrow$ &
\textbf{2} & $\barrow$ &
\textbf{3} 
\end{tabular}
\end{center}

我得到了一些带有较长右箭头的东西,

尝试 2

如果我使用 stackrel 将标签放在每个较长的箭头上,

\begin{center}
\begin{tabular}{ccccc}
\textbf{1} &
$\stackrel{\phi_{1}}{\barrow}$ &
\textbf{2} & $\stackrel{\phi_{2}}{\barrow}$ &
\textbf{3} 
\end{tabular}
\end{center}

看起来效果不错(它们居中,这正是我想要的)。但是,标签太小了(同样,出于愚蠢的审美原因)。

在此处输入图片描述

由于标签总是数学,我使用 scalebox 将它们放大:

\begin{center}
\begin{tabular}{ccccc}
 \textbf{1} &
 $\stackrel{\scalebox{0.91}{$\phi_{1}$}}{\barrow}$ &
 \textbf{2} & $\stackrel{\scalebox{0.91}{$\phi_{2}$}}{\barrow}$ &
\textbf{3} 
 \end{tabular}
\end{center}

但是,标签不再居中:

在此处输入图片描述

那么,有没有办法从这里到达那里——更长的右箭头,居中,更大的标签,几乎总是处于数学模式?

出于各种原因,我希望继续使用表格(因为事实上,我有这种特殊构造的多行),但这可能行不通。欢迎在另一个“包”中进行演示(或者,更好的是——最欢迎在表格中演示如何做到这一点!)

提前致谢。

答案1

由于您已经在使用tabular它,tikz-cd如果可以选择,那么更改为就不会有太大麻烦:

在此处输入图片描述

\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
  \textbf{1} \arrow[rr,"\phi_1"] && \textbf{2} \arrow[rr,"\phi_2"] && \textbf{3}
\end{tikzcd}
\end{document}

&添加一个都会生成一个新列,例如tabular,并且\arrow[rr]向右添加两列r

对于较短的箭,您可以使用\arrow[r,"\phi_1"] &,对于更长的箭,可以使用\arrow[rrr,"\phi_1"] &&&

答案2

\displaystyle只需在 s之前添加\phi,使用 OP 的第 3 个代码块。

\documentclass{article}
\usepackage{amsmath}
\newcommand*{\barrow}{\xrightarrow{\kern0.8cm}}
\begin{document}
\begin{center}
\begin{tabular}{ccccc}
\textbf{1} &
$\stackrel{\displaystyle\phi_{1}}{\barrow}$ &
\textbf{2} & $\stackrel{\displaystyle\phi_{2}}{\barrow}$ &
\textbf{3} 
\end{tabular}
\end{center}
\end{document}

在此处输入图片描述

如果您希望在设置垂直间隙时有更多控制权,这里有一个替代方法,实际上需要更少的输入,使用堆栈和语法\barrow[<overset>]。在 MWE 中,我缩小了垂直间隙。

\documentclass{article}
\usepackage{stackengine,amsmath}
\stackMath
\newcommand*{\barrowaux}{\xrightarrow{\kern0.8cm}}
\newcommand\barrow[1][]{\mathrel{\stackon[-1pt]{\barrowaux}{#1}}}
\begin{document}
\begin{center}
\begin{tabular}{ccccc}
\textbf{1} & $\barrow[\phi_{1}]$ & \textbf{2} & $\barrow[\phi_{2}]$ & \textbf{3} 
\end{tabular}
\end{center}
\end{document}

在此处输入图片描述

相关内容