如何让文本和图片在 Beamer 中一起弹出?

如何让文本和图片在 Beamer 中一起弹出?

我正在使用 Beamer 制作演示文稿。我希望使文本和其对应的图片同时显示。

目前,我能够借助 来将图片与文本一起显示在框架中minipage,但它们会重叠,并且从头到尾始终处于静止状态。这是我的 MWE。

\documentclass{beamer}

\begin{document}

\begin{frame}
\frametitle{Background}

\begin{minipage}[0.2\textheight]{\textwidth}
\begin{columns}[T]
\begin{column}{0.8\textwidth}
\begin{itemize}
\item 1\pause
\begin{enumerate}
    \item 1\pause
    \item 2\pause
\end{enumerate}
\end{itemize}
\end{column}
\begin{column}{0.2\textwidth}
\rule{50pt}{50pt}% pic corresponding to 1.1
\rule{50pt}{50pt}% pic corresponding to 1.2
\end{column}
\end{columns}
\end{minipage}


\end{frame}
\end{document}​

期望的效果应该是...

  • 1 弹出
  • 1.1 与 pic1 同时弹出
  • 1.2 与图2一起弹出

当 pic2 出现时,pic1 可以消失,也可以保留在那里,只要 pic2 可见。

我怎样才能实现它?

答案1

如果我理解你的问题没有错,你希望当 1.1 出现时出现图片,然后当 1.2 出现时第二张图片替换它。这可以使用命令\alt和幻灯片规范来实现<,而>不是\pause。这是一个解决方案:

\documentclass{beamer}

\usepackage{color}
\newcommand{\picone}{{\color{red}\rule{50pt}{50pt}}}
\newcommand{\pictwo}{{\color{green}\rule{50pt}{50pt}}}

\begin{document}

\begin{frame}
\frametitle{Background}

\begin{minipage}[0.2\textheight]{\textwidth}
\begin{columns}[T]

\begin{column}{0.8\textwidth}
\begin{itemize}
\item<2-> 1
\begin{enumerate}
\item<3-> 1
\item<4-> 2
\end{enumerate}
\end{itemize}
\end{column}

\begin{column}{0.2\textwidth}
\alt<1-2>{}{\alt<3>{\picone}{\pictwo}}
\end{column}

\end{columns}
\end{minipage}
\end{frame}
\end{document}

我已经包含了该color包以使图片的变化可见。

如果你希望第二张图片出现时第一张图片保留,那么你可以替换

\alt<1-2>{}{\alt<3>{\picone}{\pictwo}}

经过

\onslide<3->{\picone}
\onslide<4->{\pictwo}

我希望这是您所寻找的解决方案。

编辑

在 beamer 中,您通常可以使用<n-m>on 来指定它们应在帧中出现的时间。正如人们可能猜测的那样,nm表示间隔,但其中一个 then 可能会被省略,因此<n-> 和分别<-m>表示从n和到和直到m。您还可以写出<n>是否只n希望该内容出现在幻灯片上。这些内容可以用逗号分隔的列表组合起来,这<1,4->意味着在幻灯片 1 上加上幻灯片 4 以及之后。

该命令\alt显示一个内容,然后在指定的幻灯片上将其更改为其他内容(我猜是这个名字的由来)。例如

\alt<2-3>{first}{second}

first在第 2 张和第 3 张幻灯片以及second其余幻灯片上显示。

我所做的是制作嵌套的\alt,以便可以在三个不同的东西(无、图片 1 和图片 2)之间切换。因此,如果您希望在第二个图片之后出现一张额外的图片,您可以替换

\alt<1-2>{}{\alt<3>{\picone}{\pictwo}}

经过

\alt<1-2>{}{\alt<3>{\picone}{\alt<4>{\pictwo}{\picthree}}}

通过这种方式,您可以继续处理任意数量的图片。

相关内容