用Beamer制作幻灯片(卷三 动画篇)

时间:2021-10-26 06:12:47

在前面的两个章节中主要讲解的是怎么制作幻灯片的大体框架,要使得幻灯片更吸引眼球我们就还需要为其添加一些动画。

1.覆盖

覆盖是最为基本的一种幻灯片效果。严格地说,它甚至不是”动态“效果,而只是把同一帧幻灯片的不同内容按一定的次序拆分成几页显示出来。 利用覆盖可以让内容逐步显示出来,例如让一个列表项分成几步显示出来,也可以让不同的内容依次代替,产生类似动画的效果。 逐步显示是最为常用的覆盖效果。其基本的命令是\pause,表示幻灯片在此处会停顿一下,在\puase后面的所有内容会在pdf文件的下一页显示。例如,可以在一帧的每段话后面使用\pause,让文字一段一段地显示出来。 可以给目录命令\tableofcontents加上pausesectitions选项,这样目录会在每一项后面暂停,例如:
\begin{frame}

\tableofcontents[pausesections]

\section{Android设计}

\section{Android开发}

\section{Android发布}
\end{frame}

但是这里要注意一下引入其他的宏包可能会使得这个效果出现一些意想不到的错误。可能是Latex内核的程序还不完善存在bug的原因。
上次我在幻灯片里加入了\uspackage{arev}宏包使得显示动画的时候出了一些问题。
更为一般的是\onslide,它可以指定内容在一帧中的第几步显示,使用\onslide时不显示的内容还占用它原来的位置。 与onslide相似的就是\only命令,不过only命令在不显示的步骤没有额外的占位,可以得带内容替代的效果。 举一个onslide效果的例子,代码如下所示:
\begin{frame}{动画效果展示}
\onslide<1>{只有第一部}

\onslide<2->{第二部之后}

\onslide<1,3>{第1,3两步}
\end{frame}
\onslide和\only命令还有许多变种,这些命令的效果都大同小异,\uncover和\visible与\onslide大体相同,只是用不同的方式隐藏文字;\invisible与\visible与\onslide大体相同,只是用不同的方式隐藏文字;\invisible与\visible具有相反的效果;\alt可以分别设置在指定步骤和步骤外的内容,而\temporal则可以分别指定知道那个步骤与此步骤前后的内容,这里不再详细举例。
这种使用尖括号表示步骤的覆盖语法,实际上在beamer的很多命令和环境后面都可以使用,例如:
\begin{frame}
\textbf<3>{只在第三步加粗}
\end{frame}
这种在<>括号中加入数字在itemize中最为常用,用来表示列表项目出现的先后顺序。
如下面的代码显示:
\begin{frame}{动画显示}
\begin{itemize}
\item<1->显示列表一

\item<2->显示列表二

\item<3->显示列表三

\end{itemize}
\end{frame}

还有另一种表示这种动画的代码米奇形式更为简洁:
\begin{frame}
\begin{itemize}[<+->]
\item 开始显示
\item 其次显示
\item 最后显示
\end{itemize}
\end{frame}
在Latex中structure和alert命令则用于在指定的步骤设置高亮,前者使用幻灯片结构的色彩,后者使用的是更鲜明的警告色彩(一般是红色)。他们可以带上覆盖的语法。

为了使高亮命令作为覆盖语法的一部分,我们举一个例子:

\begin{frame}{动画显示}
\begin{itemize}
\item<+-| structure@+>显示列表一

\item<2-| alert@+>显示列表二

\item<3->显示列表三

\end{itemize}

动画的效果还有很多,但是有些功能我实现的时候还是会报错,之后会继续研究,找到正确的方法之后再更新blog。










安利一个微信公众号~欢迎多多关注哟~定期推送IT面试经典问题~

谢谢大家

用Beamer制作幻灯片(卷三 动画篇)