4

I have a beamer presentation for a long presentation, but I'd like to make a smaller presentation which skips some of the slides. Does beamer have a way to do that, or should I just comment out the source code for the slides I want to skip?

drevicko
  • 505
  • 1
  • 6
  • 15
  • If you cut the code and paste in new files, you can use \include{} to compile only what you wish. – Sigur Jan 29 '16 at 19:56

4 Answers4

6

Found an alternative solution at: Remove frame from presentation

It does not require to add new definitions, but you can't encapsulate many frames at once.

It simply consists on adding <0> after \begin{frame}.

\documentclass{beamer}

\begin{document}
\begin{frame}<0>
1
\end{frame}
\begin{frame}
2
\end{frame}
\begin{frame}<0>[noframenumbering]
skipping frame numbering
\end{frame}
\begin{frame}
3
\end{frame}
\begin{frame}
4
\end{frame}
\end{document}
6

With the beameraudience package you can create different versions of the presentation based on keywords of your choice:

\documentclass{beamer}

\usepackage[
    audience=long
    ]{beameraudience}

\begin{document}

\frame{Frame 1}

\justfor{long}{%
    \frame{Frame 2 -- Additional Slide} 
}


\frame{Frame 3}

\end{document}
  • Is there any convenient way to run latex with a parameter, or is the recommended way to change the header, compile, rename/save pdf, and change header again? – FooBar Jan 15 '19 at 15:12
  • @FooBar You can use constructs like \def\foo{bar}\input{documentname} and then pass \foo as package option. Or use different jobnames, see e.g. https://tex.stackexchange.com/a/327352/36296 and https://tex.stackexchange.com/questions/1492/passing-parameters-to-a-document – samcarter_is_at_topanswers.xyz Jan 15 '19 at 15:18
  • Can I call the value of the audience variable in a slide, so that the slide can have some sort of statement about it being a specific variant (and where the name of the variant is auto-populated)? – ashman Nov 12 '20 at 02:14
  • @samcarter_is_at_topanswers.xyz Is there a way to have \justfor evaluate to True if it matches any one of a list of possible audiences? – ashman Jun 11 '21 at 16:30
2

The beamer package offers a 'handout' mode. You can mark frames to be only printed in the 'beamer' (projector) version, to be only printed in the handout version or in both. The beameruserguide explains how to do this.

2

You could define your own if condition and just wrap every additional slide inside of \ifadditional ... \fi.

\documentclass{beamer}

\newif\ifadditional
\additionaltrue
%\additionalfalse % UNCOMMENT TO CREATE SMALLER VERSION

\begin{document}

\frame{Frame 1}

\ifadditional
\frame{Frame 2 -- Additional Slide}
\fi

\frame{Frame 3}

\end{document}
Benjamin
  • 4,781