我有一张由以下代码制作的幻灯片:
\begin{frame}[plain]
\begin{itemize}
\item Current work 0
\item Future works 1
\item Future works 2
\begin{center}
\includegraphics[scale=0.35]{xxx.pdf}
\end{center}
\end{itemize}
\end{frame}
现在我想同时显示第一项“当前作品 0”和图形xxx.pdf
,同时灰显两个“未来作品”。然后在下一张幻灯片中我想显示两个“未来作品”项目,灰显“当前作品”和图形。有什么方法可以实现吗?
答案1
以下 MWE 规定\hidecontent[<transparency>]{<stuff>}
隐藏<stuff>
。可选透明度设置为<transparency>
(由 Heiko 提供)transparent
包裹);默认为0.25
或25%:
\documentclass{beamer}% http://ctan.org/pkg/beamer
\usepackage{transparent}% http://ctan.org/pkg/transparent
\setbeamercovered{transparent}
\newcommand{\hidecontent}[2][0.25]{{% \hidecontent[<transparency>]{<stuff>}
\setbox9=\hbox{#2}% Store <stuff> in \box9 to obtain height/width
\transparent{#1}\ooalign{\usebox9\cr\color{white}\rule{\wd9}{\ht9}\cr}}}
\begin{document}
\begin{frame}[plain]
\begin{itemize}
\item<1> Current work 0
\item<2> Future works 1
\item<2> Future works 2
\begin{center}
\mbox{\only<1>{\includegraphics[scale=0.35]{example-image-a.pdf}}}%
\mbox{\only<2>{\hidecontent{\includegraphics[scale=0.35]{example-image-a.pdf}}}}%
\end{center}
\end{itemize}
\end{frame}
\end{document}
beamer
无法充分处理图形的隐藏,因此使用\hidecontent
。这适用于矩形内容。其他内容(例如文本)最好单独处理beamer
。
答案2
我可以建议一种比 Werner 建议的更简单的方法。它只包含一个包含项,并且不会更改您的代码,但您必须下载可解决您问题的自定义样式。
下载
fixpauseincludegraphics.sty
并将其放入与您的.tex
文件相同的文件夹中。包含该包
\usepackage{fixpauseincludegraphics}
。(可选)签出这个帖子了解它是如何工作的 - 长话短说,这个解决方案包括重载以重新
\includegraphics
绘制图片,并tikz
根据beamer
透明度状态更改不透明度。