Beamer 带有 itemize 和 item 中的图像:避免跳跃

Beamer 带有 itemize 和 item 中的图像:避免跳跃

我正在准备 Beamer 演示文稿。

在一个框架中我有一个项目符号列表(逐项列出)。

我想在项目列表的每个项目中显示一些小图像(徽标)以及文本。

我有两种情况,但都不理想。

在第一种情况下,我有:

\documentclass{beamer}
\begin{document}
\begin{frame}{Introduction}
\centering
{  \textbf{Quantum Information Processing}}

\begin{itemize}[<+->] 
    
    \item \includegraphics<1->[width=0.9cm]{example-image-duck} University of Oxford  
    \item \includegraphics<2->[width=2.5cm]{example-image-duck} Université de Montréal
    \item \includegraphics<3->[width=2cm]{example-image-duck} Université du Quebec 
    
\end{itemize}
\end{frame}
\end{document}

该代码的问题在于,后面的项目中的图像在未显示时不会“占用空间”,因此在第二个覆盖中,第一个项目的位置会相对于第一个覆盖“跳跃”,依此类推。

另一方面,如果我有:

\documentclass{beamer}
\begin{document}
\begin{frame}{Introduction}
\centering
{  \textbf{Quantum Information Processing}}

\begin{itemize}[<+->] 
    
    \item \includegraphics[width=0.9cm]{example-image-duck} University of Oxford  
    \item \includegraphics[width=2.5cm]{example-image-duck} Université de Montréal
    \item \includegraphics[width=2cm]{example-image-duck} Université du Quebec 
    
\end{itemize}
\end{frame}
\end{document}

后续图像会显示在所有覆盖层中,即使其所在的“项目”未显示也是如此。

我在这里看到过类似的问题,例如,但他们的情况和要求略有不同。

提前感谢你的帮助!

答案1

虽然我更喜欢我的框架都是top 对齐的(它也可以作为一个类选项),但是

\setbeamercovered{transparent=5}

当图形被“覆盖”时,它们不会遵守该设置。

手册中第17.6 透明效果

理想情况下,应该有一个选项可以让覆盖的文本“透明”。[…] 不幸的是,pgf目前还不支持真正的透明度。相反,透明度是通过将要显示的对象的颜色与当前背景颜色(颜色bg,希望设置为对象应放置在其上的背景的平均颜色)混合来创建的。要安装此效果,您可以使用:

 \setbeamercovered{transparent}

[…] 透明效果将自动应用于所有颜色,图像中的颜色除外。对于图像,有一种解决方法,请参阅包的文档pgf

(PGF 处理 Beamer 的矢量图形方面(\includegraphics但不处理)。)

这意味着你需要获得以特定格式命名的图像的透明版本. 另请参阅xxcolor包裹

这对我来说工作量太大了(特别是在截止日期的前一天)。


如果你不介意这个框架没有透明度,你可以使用

\setbeamercovered{invisible}

这是默认值,或者你可以使用

\begin{itemize}[<visible@+->]
   % …
\end{itemize}

它不使用默认的\uncover方式来处理覆盖,而是使用\visible一种。

代码

\documentclass{beamer}
\setbeamercovered{transparent=5}
\usepackage[export]{adjustbox}
\begin{document}
\begin{frame}{Introduction}
             %{Quantum Information Processing} % subtitle?
{\centering % \centering doesn't take an argument
 \textbf{Quantum Information Processing}\par}

\begin{itemize}[<visible@+->]
\item \includegraphics[width=0.9cm, valign=c]{example-image-a}
      University of Oxford
\item \includegraphics[width=2.5cm, valign=c]{example-image-b}
      Université de Montréal
\item \includegraphics[width=2cm,   valign=c]{example-image-c}
      Université du Quebec
\end{itemize}
\end{frame}
\end{document}

答案2

避免跳跃的最简单方法是使用顶部对齐的框架:

\documentclass{beamer}

\usepackage[export]{adjustbox}
\begin{document}
    
\begin{frame}[t]
\frametitle{Introduction}
\centering
{  \textbf{Quantum Information Processing}}

\begin{itemize}[<+->] 
    
    \item \includegraphics<1->[width=0.9cm,valign=c]{example-image-duck} University of Oxford  
    \item \includegraphics<2->[width=2.5cm,valign=c]{example-image-duck} Université de Montréal
    \item \includegraphics<3->[width=2cm,valign=c]{example-image-duck} Université du Quebec 
    
\end{itemize}
\end{frame}
    
\end{document}

在此处输入图片描述

相关内容