我正在制作beamer
演示文稿。我想制作一个框架其中包含几张重叠的图像,就像一叠照片。实际上,我想要的是这样的:
.-----.
| AAA |
| AAA |
'-----'
然后,下一张幻灯片显示:
.-----.
| AAA |
| AA.-----.
'---| BBB |
| BBB |
'-----'
然后,下一个显示:
.-----.
| AAA |
| AA.-----.
'.-----.B |
| CCC |B |
| CCC |--'
'-----'
这个想法是控制每幅图像的位置并允许它们重叠。我不知道如何在 beamer 中做到这一点。
我认为最好的解决方案是将所有图像放在同一个里面frame
,但\pause
在它们之间放置一个命令。
答案1
TikZ 示例:
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{center}
\begin{tikzpicture}
\node (img1) {\includegraphics[height=3cm]{img1}};
\pause
\node (img2) at (img1.south east) {\includegraphics[height=3cm]{img2}};
\pause
\node (img3) at (img2.south west) [yshift=1cm] {\includegraphics[height=3cm]{img3}};
\end{tikzpicture}
\end{center}
\end{frame}
\end{document}
第二张和第三张图像放置在前一张图像的一角,第三张也稍微向上移动了一点,原因是我使用的图像之间有一些空白。当然,您可以将图像放置在特定的坐标上,而不是像这里一样相互相对。
答案2
可以使用简单的 LaTeX 命令完成,\put
无需任何附加包。单位为 pt,但如果您更喜欢其他单位,则可以通过以下方式设置:\unitlength=1cm
。值始终从当前点测量。在我的示例中,从行的开头开始
\PassOptionsToPackage{demo}{graphicx}%% Only for demo here
\documentclass{beamer}
\def\Put(#1,#2)#3{\leavevmode\makebox(0,0){\put(#1,#2){#3}}}
\begin{document}
\begin{frame}
\includegraphics[height=3cm]{img1}\pause
\Put(10,50){\color{blue}\includegraphics[height=3cm]{img2}}\pause
\Put(100,30){\color{red}\includegraphics[height=3cm]{img3}}
\end{frame}
\end{document}
答案3
您可以使用包将所有三幅图像放置在绝对位置textpos
(另请参阅投影机中的绝对定位)。另一种方法是使用 TikZ 将三幅图像放置在 内的自己的坐标系中tikzpicture
。这两个包应该可以很好地与 配合使用。可以使用或 beamer 的另一个叠加宏beamer
添加动画。\pause