Beamer:如何将图像显示为逐步呈现的图像

59

我正在使用Beamer类制作演示文稿。 我想在一个帧中逐一显示简单的图像列表,就像使用itemize<+->时一样。

我可以逐个显示图像,但每次插入新图像时,图像都会移动位置。 我该如何解决这个问题 - 在我的视角中,必须有一个简单的解决方案,而不需要指定图像的绝对位置。


您想在单个框架中显示所有图像,还是每个图像都在自己的框架中,但与之前显示的图像对齐? - Sven Marnach
在单个画面中...因此图像不会随着它们被发现而移动 - aagaard
4
您可以在 TeX StackExchange 上找到一个完整的社区,那里没有与 TeX 相关的问题太小。请参考这个问题 - Matthew Leingang
谢谢提供链接!我之前不知道这个存在。 - aagaard
5个回答

55

您可以简单地像这样指定一系列图像:

\includegraphics<1>{A}
\includegraphics<2>{B}
\includegraphics<3>{C}

这将生成三个幻灯片,其中图像A到C在完全相同的位置。


5
我也尝试过这种方法并且取得了一些成功,但与其让内容“弹出”,我更愿意从一开始就将内容分配到幻灯片上。这样当它出现时,幻灯片上的其他内容也会随之移动。 - aagaard
1
如果图像是分别包裹在“centerline”中,则此方法无效。如果所有图像都包裹在单个“centerline”中,则此方法有效。 - kennyB
在每行末尾加上一个百分号(%),以使图像不移动(请参见Subhadeep的帖子)。 - Mathi

51
我通过使用visible-command解决了我的问题。

编辑:

\visible<2->{
   \textbf{Some text}
   \begin{figure}[ht]
       \includegraphics[width=5cm]{./path/to/image}
    \end{figure}
 }

当涉及图像时,visible优于onslide,因为onslide尝试使图像透明化,但它却无法做到! - Sibbs Gambling
3
我认为在大多数情况下不需要像这样使用 \begin{figure},你只需将 \includegraphics 部分放入即可,至少这是我偏好的。你是否打算在 Beamer 幻灯片中使用编号的图像?如果是,那么你比我更加挑剔 :) - pauljohn32
1
不错的解决方案,因为在之前的叠加中会考虑到图形的空间,而使用\includegraphics<1>{A}方法似乎并非如此。值得在您的帖子中强调吗? - Matifou
它在我的情况下工作得非常完美:3张图片之间有空隙(\hfill-IMG1-\hfill-IMG2-\hfill-IMG3-\hfill)。所有其他解决方案都会移动这些图片。 - Chutlhu

24
\includegraphics<1>{A}%
\includegraphics<2>{B}%
\includegraphics<3>{C}%

百分号很重要。这将使所有图像固定。


2
这不应该是对Svante答案的评论吗? - Cyriac Antony
1
我发现“%”对于保持图像固定是必要的。它是beamer特有的还是latex通用的功能? - bricoletc
@bricoletc 我怀疑这是LaTeX的普遍情况。百分号试图消除由于换行符而存在的额外空格。在大多数情况下,额外的空格是有帮助的,例如句中换行。但在这种情况下,它是一个麻烦。 - Frenzy Li

13

这是我所做的:

\begin{frame}{series of images}
\begin{center}
\begin{overprint}

\only<2>{\includegraphics[scale=0.40]{image1.pdf}}
\hspace{-0.17em}\only<3>{\includegraphics[scale=0.40]{image2.pdf}}
\hspace{-0.34em}\only<4>{\includegraphics[scale=0.40]{image3.pdf}}
\hspace{-0.17em}\only<5>{\includegraphics[scale=0.40]{image4.pdf}}

\only<2-5>{\mbox{\structure{Figure:} something}}

\end{overprint}
\end{center}
\end{frame}

1

这是我用来解决问题的示例代码。

\begin{frame}{Topic 1}
Topic of the figures
\begin{figure}
\captionsetup[subfloat]{position=top,labelformat=empty}
\only<1>{\subfloat[Fig. 1]{\includegraphics{figure1.jpg}}}
\only<2>{\subfloat[Fig. 2]{\includegraphics{figure2.jpg}}}
\only<3>{\subfloat[Fig. 3]{\includegraphics{figure3.jpg}}}
\end{figure}
\end{frame}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接