![使用 beamer `\only` 时垂直居中](https://linux22.com/image/271182/%E4%BD%BF%E7%94%A8%20beamer%20%60%5Conly%60%20%E6%97%B6%E5%9E%82%E7%9B%B4%E5%B1%85%E4%B8%AD.png)
为了演示,我想展示如何逐步简化方程式。当我尝试使用 执行此操作时\only
,文本会垂直跳动。
最小失败示例:
\documentclass[11pt]{beamer}
\begin{document}
\begin{frame}
\begin{itemize}
\item<1|only@1> Curvature term drops in 2d:
\begin{equation*}
S = \frac{1}{16 \pi G} \int d^{n}x \sqrt{-\det g} (R - 2 \Lambda)
\end{equation*}
\item<2|only@2> $\Lambda$ is constant:
\begin{equation*}
S = \frac{1}{16 \pi G} \int d^{n}x \sqrt{-\det g} (- 2 \Lambda)
\end{equation*}
\item<3|only@3> Rescale cosmological constant:
\begin{equation*}
S = \frac{-2\Lambda}{16 \pi G} \int d^{n}x \sqrt{-\det g}
\end{equation*}
\item<4|only@4> Integral over space:
\begin{equation*}
S = - \lambda \int d^{n}x \sqrt{-\det g}
\end{equation*}
\end{itemize}
\end{frame}
\end{document}
我该如何解决这个问题?有没有更好的方法可以获得类似的效果,而无需使用\only
?
答案1
这就是overprint
和overlayarea
环境的设计目的。对于您的情况,您可以使用overlayarea
和\leavevmode
(后者用于防止初始“跳跃”):
\documentclass[11pt]{beamer}
\begin{document}
\begin{frame}
\begin{overlayarea}{\textwidth}{3cm}
\leavevmode
\begin{itemize}
\item<1|only@1>{Curvature term drops in 2d:
\begin{equation*}
S = \frac{1}{16 \pi G} \int d^{n}x \sqrt{-\det g} (R - 2 \Lambda)
\end{equation*}}
\item<2|only@2>{$\Lambda$ is constant:
\begin{equation*}
S = \frac{1}{16 \pi G} \int d^{n}x \sqrt{-\det g} (- 2 \Lambda)
\end{equation*}}
\item<3|only@3>{Rescale cosmological constant:
\begin{equation*}
S = \frac{-2\Lambda}{16 \pi G} \int d^{n}x \sqrt{-\det g}
\end{equation*}}
\item<4|only@4>{Integral over space:
\begin{equation*}
S = - \lambda \int d^{n}x \sqrt{-\det g}
\end{equation*}}
\end{itemize}
\end{overlayarea}
\end{frame}
\end{document}