我想分两步显示一个框架:
- 首先是块标题
- 下面还有一张图片。
这是我的代码:
\begin{frame}{title}
\begin{block}{blockTitle}<1->
\includegraphics<2->[width=\textwidth]{image.png}
\end{block}
\end{frame}
不幸的是,它并没有像我希望的那样显示内容。首先,它在框架中间显示块标题。然后,它将这个块标题向上移动,让图像出现在框架中间。
我想要的首先是让块标题出现在其确定的位置,其次是让图片出现在下方,而块标题不移动。
当然,我可以[t]
在后面添加\begin{frame}
来解决我的问题,但这样不会将块放在框架的中间,而是放在框架的顶部。
答案1
您应该为幻灯片第一帧上显示的图像指定一个“空补集”。下面我已使用它\only<1>{\phantom{..}}
来插入并保留所需的空间,以便其他幻灯片内容不会移动。
\documentclass{beamer}% http://ctan.org/pkg/beamer
\begin{document}
\begin{frame}{title}
\begin{block}{blockTitle}<1->
\only<1>{\phantom{\includegraphics[width=\linewidth,height=.3\textheight]{example-image-a}}}%
\includegraphics<2->[width=\linewidth,height=.3\textheight]{example-image-a}
\end{block}
\end{frame}
\end{document}
请注意使用%
以避免内容在水平方向上进一步“抖动”。请参阅%
行末百分号 ( ) 有什么用?
答案2
一个简单的解决方案\uncover
:
\documentclass{beamer}
\begin{document}
\begin{frame}
\frametitle{A test frame}
\begin{block}{A block with an image}
\uncover<2>{\includegraphics[width=6cm]{example-image-a}}
\end{block}
\end{frame}
\end{document}