我有一个包含许多帧的大型Beamer文件。根据演示目的,我想在演示文稿中包含/排除某些幻灯片。有没有办法在文档末尾定义框架并在需要时调用它们?如下所示:
\documentclass{beamer}
\begin{document}
% including the frames
\include{F1}
\include{F2}
% \include{F3}
\include{F4}
% frame definitions
\begin{frame}[F1]
1
\end{frame}
\begin{frame}[F2]
2
\end{frame}
\begin{frame}[F3]
3
\end{frame}
\begin{frame}[F4]
4
\end{frame}
\end{document}
我知道我可以逐帧进行添加<beamer:0>
以排除该帧,但由于演示时间过长,如果我有可能按上述方式进行操作会很棒。
答案 0 :(得分:1)
我并不认为以下内容非常漂亮,但您可以为每个框架定义\newcommand
唯一,其中命令只会转换为单个值0
(已排除)或1
(包括在内)。 E.g。
\newcommand{\includeFrameA}{0} % exclude frame
\newcommand{\includeFrameB}{1} % include frame
然后,使用帮助命令
\newcommand{\includeFrame}[1]{beamer:#1}
您可以通过在框架环境签名中添加<\includeFrame{\includeFrameX}>
来定义框架;如此包含/排除框架,具体取决于文档标题中指定的\includeFrameX
的值。
以下示例排除了框架&#34; A&#34;和&#34; C&#34;,并且制作的演示文稿仅包括两页,包含&#34; B&#34;和&#34; D&#34;分别。
\documentclass{beamer}
\newcommand{\includeFrame}[1]{beamer:#1}
% one command per frame, 0/1 : exclude/include
\newcommand{\includeFrameA}{0}
\newcommand{\includeFrameB}{1}
\newcommand{\includeFrameC}{0}
\newcommand{\includeFrameD}{1}
\begin{document}
% frame definitions
\begin{frame}<\includeFrame{\includeFrameA}>
A
\end{frame}
\begin{frame}<\includeFrame{\includeFrameB}>
B
\end{frame}
\begin{frame}<\includeFrame{\includeFrameC}>
C
\end{frame}
\begin{frame}<\includeFrame{\includeFrameD}>
D
\end{frame}
\end{document}
答案 1 :(得分:0)
这正是\includeonlyframes
命令的作用:
\documentclass{beamer}
\includeonlyframes{%
F1,%
F2,%
%F3,%
F4,%
}
\begin{document}
\begin{frame}[label=F1]
1
\end{frame}
\begin{frame}[label=F2]
2
\end{frame}
\begin{frame}[label=F3]
3
\end{frame}
\begin{frame}[label=F4]
4
\end{frame}
\end{document}