我想要的东西的简短描述:在 beamerclass 框架中,左侧有两个项目(bulletitems?),右侧有两张图片。当显示第一个项目时,我希望显示第一张图片。在下一张幻灯片中,当出现第二个项目时,我希望保留第一个项目,但将右侧的第一张图片完全替换为第二张图片。
这就是我想出的:
\begin{frame}
\begin{columns}
\column{.6\textwidth}
\begin{itemize}[<+->]
\item<1,2> Some Text explaining the first picture
\item<2> Text explaining second picture
\end{itemize}
\column{.4\textwidth}
\onslide<1> \begin{figure}[htbp]
\centering
first picture
\caption{fstpic}
\end{figure}
\onslide<2> \begin{figure}[htbp]
\centering
second picture
\caption{sndpic}
\end{figure}
\end{columns}
\end{frame}
我尝试使用第二个 itemize 环境进行相同的操作(替换\onslide
),但遇到了同样的问题:
右侧的图片未垂直居中。第一张图片将显示在框架顶部,第二张图片将显示在框架下方(即使第一张图片消失了)。
有没有简单的方法可以做到这一点?
答案1
使用\only
。
代码
\documentclass[]{beamer}
\begin{document}
\begin{frame}
\begin{columns}
\column{.6\textwidth}
\begin{itemize}[<+->]
\item<1,2> Some Text explaining the first picture
\item<2> Text explaining second picture
\end{itemize}
\column{.4\textwidth}
\centering
\only<1>{\begin{figure}[!htbp]
\includegraphics[scale=.23]{example-image-a}
\caption{fstdpic}
\end{figure}
}
\only<2>{\begin{figure}[!htbp]
\includegraphics[scale=.23]{example-image-b}
\caption{sndpic}
\end{figure}
}
\end{columns}
\end{frame}
\end{document}