我使用\setbeamercovered
透明度來表示“仍然被覆蓋”和“再次被覆蓋”,以使當前的點更加突出。但是,當在逐項中使用逐項時,內部逐項的點似乎繼承了最後一項的透明度。如何避免這種情況?
這是我的最小程式碼:
\documentclass{beamer}
\setbeamercovered{still covered={\opaqueness<1->{5}},again covered={\opaqueness<1->{60}}}
\begin{document}
\begin{frame}
\frametitle{Quelle II}
\begin{itemize}[<+>]
\item Foo
\item Bar
\begin{itemize}
\item Blah
\item Blub
\end{itemize}
\end{itemize}
\end{frame}
\end{decument}
在這個例子中,Blah & Blub 永遠不會是不透明的。因為他們似乎「繼承」了Bar的透明度。
答案1
解決方案已經描述過了這裡透過使用etoolbox
。
所以在你的情況下這樣做:
\documentclass{beamer}
\usepackage{etoolbox} % this is new
\setbeamercovered{still covered={\opaqueness<1->{5}},again covered={\opaqueness<1->{60}}}
% begining of the new definition
\makeatletter
\newcommand*\fix@beamer@close{%
\ifnum\beamer@trivlistdepth>0
\beamer@closeitem
\fi
}
\newcommand*\fix@beamer@open{%
\ifnum\beamer@trivlistdepth>0
\gdef\beamer@closeitem{}%
\fi
}
\BeforeBeginEnvironment{itemize}{\fix@beamer@close}
\AfterEndEnvironment{itemize}{\fix@beamer@open}
\makeatother
% end of the new definition
\begin{document}
\begin{frame}
\frametitle{Quelle II}
\begin{itemize}[<+>]
\item Foo
\item Bar
\begin{itemize}
\item Blah
\item Blub
\end{itemize}
\end{itemize}
\end{frame}
\end{document}