我想在等号上方放置一个问号,但我需要问号出现在等号之前:
\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
和\only
friends 是相当复杂的构造,会生成多个部分页面。错误表明\stackrel
需要标准数学构造,因此将所有内容重新包装起来\mathrel
是一种“有根据的猜测”。