Beamer - 列表项互相替换

Beamer - 列表项互相替换

在某个框架中,我希望在框架底部显示一张图片,并显示几个描述该图片的列表项。因此,我的计划是垂直划分框架,将图片放在底部,将列表项放在顶部。但是由于空间问题,我希望显示第一个项目,然后被取代第二项,依此类推。

也就是说,该框架中的第一张幻灯片应如下所示:

\begin{frame}[t]{System overview}
    \begin{minipage}{\textwidth}
            \begin{itemize}
                \item item1
            \end{itemize}
    \end{minipage}
    \vfill
    \begin{minipage}{\textwidth}
        \begin{center}
            \includegraphics[scale=0.65]{picture.jpg}
        \end{center}
    \end{minipage}
\end{frame}

第二张幻灯片:

\begin{frame}[t]{System overview}
    \begin{minipage}{\textwidth}
            \begin{itemize}
                \item item2
            \end{itemize}
    \end{minipage}
    \vfill
    \begin{minipage}{\textwidth}
        \begin{center}
            \includegraphics[scale=0.65]{picture.jpg}
        \end{center}
    \end{minipage}
\end{frame}

等等。有什么想法吗?

答案1

您可以简单地在项目上使用覆盖规范。 如下:

\begin{frame}[t]{System overview}
  \begin{minipage}{\textwidth}
    \begin{itemize}
      \item<1> item1
      \item<2> item2
    \end{itemize}
  \end{minipage}
  \vfill
  \begin{minipage}{\textwidth}
    \centering
    \includegraphics[scale=0.65]{picture.jpg}
  \end{minipage}
\end{frame}

请注意,我用 替换了center环境\centering,它可以更好地处理空间。如果您希望元素在多张幻灯片上可见,则可以使用范围,例如<1-4>幻灯片 1 到 4 以及<3->幻灯片 3 以后。

编辑:我误解了这个问题,要让项目保持在原位,您需要一个\only规范。您可以\item像这样更新宏以使其“覆盖感知”:

\documentclass{beamer}
\renewcommand<>{\item}[1]{\only#2{\beameroriginal{\item}{#1}}}
\begin{document}
  \begin{frame}[t]{System overview}
  \begin{minipage}{\textwidth}
    \begin{itemize}
      \item<1>{item1}
      \item<2>{item2}
    \end{itemize}
  \end{minipage}
  \vfill
  \begin{minipage}{\textwidth}
    \centering
    \includegraphics[scale=0.65]{picture.jpg}
  \end{minipage}
\end{frame}
\end{document}

请注意,您需要{}围绕参数\item

如果由于某种原因您不想使用花括号来分隔参数,\item或者您不想更新项目命令,则可以使用如下操作规范:

\documentclass{beamer}
\begin{document}
  \begin{frame}[t]{System overview}
  \begin{minipage}{\textwidth}
    \begin{itemize}
      \item<1|only@1> item1
      \item<2|only@2> item2
      \item<3|only@3> item3
    \end{itemize}
  \end{minipage}
  \vfill
  \begin{minipage}{\textwidth}
    \centering
    \includegraphics[scale=0.65]{picture.jpg}
  \end{minipage}
\end{frame}
\end{document}

答案2

您需要\alt\item\alt<1>{item1}{item2}或嵌套的命令:\item\alt<1>{item1}{\alt<2>{item2}{item3}}等。在 beamer 文档中查找此命令的详细信息。

相关内容