6

So here is some puzzling behaviour.

\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}

As you can see, the first handout page is the second slide of the first frame, whereas I'd like it to be the first slide (i.e. the slide without the "two").

To be clear, the expected (and desired) behaviour for the handout is that there are three pages: One, then Aside, then One/Two.

Putting handout:1 in the slide specification of the frame doesn't help.

Is this a bug? Or is the beamer slide specification more mysterious than I think?

  • I do not understand. In what sense can the first slide represent the frame? Also, does \againframe makes any difference? (expect it copies the first frame faithfully) – Symbol 1 Sep 3 '15 at 9:47
  • with option handout there will be no pauses. In this example, just use \documentclass{beamer} and \againframe<2>{foo}. – touhami Sep 3 '15 at 10:22
  • @touhami \againframe<1> and \againframe<2> make no difference in handout mode. – Symbol 1 Sep 3 '15 at 10:38
  • @Symbol1 I said don't use handout option, in this example. – touhami Sep 3 '15 at 11:02
  • @touhami I see. My bad... – Symbol 1 Sep 3 '15 at 11:09
5
+200

Your code is equivalent to the following

\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}

That is, all overlay specifications are only meaningful in beamer mode.

When you pass handout to be the current mode, Beamer only recognizes the specifications begun with handout:. As a result, all specification in your code, those begun with beamer:, are ignored. That is, everything happens like there are no < and > at all.

Therefore it is not a issue that Beamer should insert which slide into handout. In fact, there is one and only one slide for each frame.

To make it possible to control overlay specification in handout mode, you need to pass specifications begun with handout:. Well... there is an easier way: begin all specification with 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}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.