斯塔克雷尔和拜默

斯塔克雷尔和拜默

我想在等号上方放置一个问号,但我需要问号出现在等号之前:

\documentclass{beamer}

\begin{document}

\begin{frame}

\visible<1->{$
    X
    \stackrel{?}
             {\visible<2->{=}}
    Y
  $}


\end{frame}
\end{document}

但是,上面的代码中问号不是出现在等号上方,而是出现在右上角。我也尝试使用 \stackbin,问号现在出现在等号左侧。

正确的做法是什么?谢谢!

答案1

您可以强制\stackrel保持\mathrel状态:

在此处输入图片描述

\documentclass{beamer}

\begin{document}

\begin{frame}

$
    X
    \stackrel{?}{\mathrel{\visible<2->{=}}}
    Y
$


\end{frame}
\end{document}

请注意,如果你省略,\mathrel则会收到错误

! Limit controls must follow a math operator.
\stackrel  #1#2->\mathrel {\mathop {#2}\limits 
                                               ^{#1}}
l.14 \end{frame}
                
? 

如果您滚动过去,那么正如您在问题中评论的那样,PDF 会将?放错在右侧,但是在任何错误之后,PDF 都不打算使用,只是可能的调试辅助,因此在询问时最好询问错误消息,而不是如果您滚动过去错误,Tex 所做的任何随机输出。

我没有追踪这里与 beamer 的交互到底是什么,但\visible\onlyfriends 是相当复杂的构造,会生成多个部分页面。错误表明\stackrel需要标准数学构造,因此将所有内容重新包装起来\mathrel是一种“有根据的猜测”。

相关内容