Beamer 中的覆盖问题

Beamer 中的覆盖问题

我目前正在学习如何使用 Beamer,并希望创建一个框架,介绍 3 种减少一类对象的技术(给定itemize)。第一种技术是三种技术中最大的,由 2 个大方程组成,例如等式1等式2。我希望将其呈现为\only<2-4>- 换句话说,我希望在第一步中出现该技术的名称,然后逐步<3-4>显示两个方程式,然后在步骤中5让所有这些方程式消失并为其他信息腾出空间。我尝试的是:

\begin{frame}{Techniques}

\begin{itemize}
\only<2-4> {\item Technique 1:
\pause
\begin{equation*} Eq1 \end{equation*}
\pause
\begin{align*} Eq2 \\ Eq2+ \end{align*}
}

\item<5-> Technique 2:
\begin{equation*} Eq 3 \end{equation*}

\item<6-> Technique 3: \pause
\hspace{1em} Algorithm 1 \pause
\hspace{1em} Algorithm 2 \pause
\hspace{1em} Algorithm 3
\end{itemize}

\vfill
\end{frame}

然而,这不起作用。它直接给出名称Technique 1等式1(在步骤2),然后等式2出现(在步骤3),但在最后一步4什么也没有发生。有办法解决这个问题吗?

PS 出现了类似的问题Technique 3,其中所有算法同时出现(而我希望它们一个接一个地出现)。不过我想,如果我学会了如何解决上述问题,我也能解决这个问题……

答案1

您必须小心地混合\pause使用<n-m>命令,因为 Beamer 并不总是能够理解您想要的内容。一个不错的技巧是

\pause[5]

告诉 beamer 暂停应从幻灯片开始计数5。另一个巧妙的技巧是,许多命令(包括)\item都接受<n-m>修饰符,这允许您编写诸如仅在幻灯片上\item<2-7>显示以下项目之类的内容。27

从你所写的内容来看,我不能完全确定我是否理解你想要什么,但我认为这很接近:

\documentclass[t]{beamer}
\begin{document}

  \begin{frame}{Techniques}
  \begin{itemize}
    \item<2-5> Technique 1:
    \only<3-5>{
      \begin{equation*} Eq1 \end{equation*}
    }
    \only<4-5>{
      \begin{align*} Eq2 \\
          \only<5>{Eq2+}
      \end{align*}
    }
    \item<6-> Technique 2:
    \begin{equation*} Eq 3 \end{equation*}

    \item<7-> Technique 3:
    \pause[8]% tell pause to start counting from slide 8
    \hspace{1em} Algorithm 1
    \pause
    \hspace{1em} Algorithm 2
    \pause
    \hspace{1em} Algorithm 3
    \end{itemize}
  \end{frame}

\end{document}

相关内容