我正在创建一个演示文稿,有 3x2 列。您可以在下面看到代码段:
\documentclass{beamer}
\begin{document}
\begin{frame}{Intro}
% First 1x2 part, first column
\begin{columns}
\begin{column}{.4\textwidth}
\includegraphics[width=1\textwidth]{pic1}
\end{column}
\begin{column}{.6\textwidth}
\begin{itemize}
\item 1
\item 2
\item 3
\end{itemize}
\end{column}
\end{columns}
\vfill
% Second 1x2 part, second column
\begin{columns}
\begin{column}{.4\textwidth}
\includegraphics[width=1\textwidth]{pic2}
\end{column}
\begin{column}{.6\textwidth}
\begin{itemize}
\item 1
\item 2
\item 3
\end{itemize}
\end{column}
\end{columns}
\vfill
% Third 1x2 part, third column
\begin{columns}
\begin{column}{.4\textwidth}
\includegraphics[width=1\textwidth]{pic3}
\end{column}
\begin{column}{.6\textwidth}
\begin{itemize}
\item 1
\item 2
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\end{document}
我想要做的是提供某种动画。这意味着当我演示幻灯片时,我希望它在开头打开时是空的,只有标题。然后,在下一次单击时,我希望显示第一列,即第一个 1x2 部分。然后,在第二次单击时,我希望显示第二个 1x2(第二列),但同时我希望第一列的内容,第一个 1x2 部分被另一张图片替换。在最后一次单击时,我只希望显示最后一个 1x2,即最后一列。如果可能的话,有什么想法可以实现这样的事情吗?
答案1
对于这种简单的动画,您可以使用\pause
。如果您需要更精细的控制,请阅读9 Creating Overlays
beamer 用户指南部分。
\documentclass{beamer}
\begin{document}
\begin{frame}{Intro}
% First 1x2 part, first column
\pause
\begin{columns}
\begin{column}{.4\textwidth}
\includegraphics<2>[width=1\textwidth]{example-image-a}
\includegraphics<3->[width=1\textwidth]{example-image-b}
\end{column}
\begin{column}{.6\textwidth}
\begin{itemize}
\item 1
\item 2
\item 3
\end{itemize}
\end{column}
\end{columns}
\vfill
\pause
% Second 1x2 part, second column
\begin{columns}
\begin{column}{.4\textwidth}
\includegraphics[width=1\textwidth]{example-image}
\end{column}
\begin{column}{.6\textwidth}
\begin{itemize}
\item 1
\item 2
\item 3
\end{itemize}
\end{column}
\end{columns}
\vfill
\pause
% Third 1x2 part, third column
\begin{columns}
\begin{column}{.4\textwidth}
\includegraphics[width=1\textwidth]{example-image}
\end{column}
\begin{column}{.6\textwidth}
\begin{itemize}
\item 1
\item 2
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\end{document}