Beamer 讲义模式和 againframe 有错误吗?

Beamer 讲义模式和 againframe 有错误吗?

这是一些令人费解的行为。

\documentclass[
handout
]{beamer}

\begin{document}
\begin{frame}<1>[label=foo]
  \begin{itemize}[<+->]
  \item One
  \item Two
  \end{itemize}
\end{frame}

\frame{Aside}

\againframe{foo}
\end{document}

如您所见,第一个讲义页是第一帧的第二张幻灯片,而我希望它是第一张幻灯片(即没有“二”的幻灯片)。

需要明确的是,讲义的预期(和期望)行为是存在三页:第一页,然后是旁边,然后是一/二页。

放入handout:1框架的幻灯片规格没有帮助。

这是错误吗?还是 Beamer Slide 规范比我想象的还要神秘?

答案1

您的代码相当于以下内容

\documentclass[handout]{beamer}
\begin{document}
\begin{frame}<beamer:1>[label=foo]
  \begin{itemize}[<beamer:+->]
  \item One
  \item Two
  \end{itemize}
\end{frame}
\frame{Aside}
\againframe{foo}
\end{document}

也就是说,所有覆盖规范只有在beamer模式下才有意义。

当您将 传递handout为当前模式时,Beamer 仅识别以 开头的规范handout:。因此,代码中的所有以 开头的规范都beamer:将被忽略。也就是说,一切都像没有<>一样发生。

因此 Beamer 应该将哪张幻灯片插入讲义并不是一个问题。事实上,每帧都有且仅有一张幻灯片。

为了能够在讲义模式下控制叠加规范,您需要传递以 开头的规范handout:。嗯...有一种更简单的方法:所有规范都以 开头all:

\documentclass[handout]{beamer}
\begin{document}
\begin{frame}<handout:1>[label=foo]
  \begin{itemize}[<all:+->]
  \item One
  \item Two
  \end{itemize}
\end{frame}
\frame{Aside}
\againframe<all:2>{foo}
\end{document}

相关内容