0

I have some slides with a lot of overlays.

While still working on my slides (so to speak in "draft mode"), I would like to collapse them into a single frame; only when compiling the final version I'd like them to expand to overlays.

I can do this on a single frame by appending an overlay specification:

\begin{frame}<1000>

Now what I'd like to do is this:

\newif\ifDraft\Drafttrue

\begin{frame}\ifDraft<1000>\fi

but this does not work (and I didn't expect it to work, based on my understanding of LaTeX evaluation of parameters and overlays).

I don't want this for all overlays (I already use "handout" mode). Rather I want to be able to compress the expensive overlays (lots of images) with a simple toggle, while not hiding the frame completely (it would of course be easy to just wrap the entire frame in \ifDraft or substitute it with a dummy frame). So it's like selectively switching to handout mode for a few frames only (those that really slow down the build).

1

I'm wondering if handout mode is what you want?

\documentclass[handout]{beamer}

See also: Is there a nice way to compile a beamer presentation without the pauses?

  • As commented on an earlier answer (that disappeared): no. I already use handout mode, too. But during drafting, I only want to disable "completed" overlays (which usually is some animation, i.e., several images, and thus slow). I want to be able to see where I put e.g. pauses to ask students; so I don't want to disable all overlays (and my handout mode is already nicely set up to produce the 'print' version, which I also need to repeated check during draft time). – Erich Schubert Nov 22 '17 at 8:30
1

This seems to do the trick:

\def\showoverlays{*} % By default, show all overlays
\ifDraft\def\showoverlays{1000}\fi % Show only overlay 1000 in draft mode.
\begin{frame}<\showoverlays>
... usual frame
\end{frame}

This variable expansion in <> works, but I first failed because I used an empty variable there rather than *, so the slide disappeared in default mode.

Maybe this (close to my first attempt) would also work - I have not verified:

\begin{frame}<\ifDraft 1000\else *\fi>
\end{frame}

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.