使用 Beamer 覆盖目录中的子部分

使用 Beamer 覆盖目录中的子部分

在我的演讲开始时,我想展示以下内容。在第一张幻灯片上,我想展示一个只有章节的目录。也就是说,子章节应该是不可见的,但它们应该存在。然后,在接下来的幻灯片上,子章节将相继融入。

使用 选项pausesubsections\tableofcontents缺点是第一张幻灯片上只显示第一部分。使用 选项会hidesubsections完全删除子部分,因此无法将它们一个接一个地混合在一起。

我尝试使用enumerate和以及来设置一个假目录,但间距与“真实”目录不同。下面提供了一个 MWE。itemize\pause

\documentclass{beamer}

\begin{document}

\begin{frame}{Outline}
    \tableofcontents[pausesubsections]
\end{frame}

\section{One}

\subsection{OneOne}
\begin{frame}
    There is nothing here.
\end{frame}

\subsection{OneTwo}
\begin{frame}
    There is nothing here.
\end{frame}


\section{Two}

\subsection{TwoOne}
\begin{frame}
    There is nothing here.
\end{frame}

\subsection{TwoTwo}
\begin{frame}
    There is nothing here.
\end{frame}

\end{document}

答案1

可以通过将子部分涂成背景色来轻松隐藏它们,同时保留它们的空间。

\documentclass{beamer}

\begin{document}

{
\setbeamercolor{subsection in toc}{fg=bg}
\begin{frame}{Outline}
    \tableofcontents
\end{frame}
}

\begin{frame}{Outline}
    \tableofcontents[pausesubsections]
\end{frame}

\section{One}

\subsection{OneOne}
\begin{frame}
    There is nothing here.
\end{frame}

\subsection{OneTwo}
\begin{frame}
    There is nothing here.
\end{frame}


\section{Two}

\subsection{TwoOne}
\begin{frame}
    There is nothing here.
\end{frame}

\subsection{TwoTwo}
\begin{frame}
    There is nothing here.
\end{frame}

\end{document}

答案2

也许你想编写类似这样的代码。这适用于 beamer 自己的命令。

在第一张幻灯片中,您将看到一个只有章节标题的大纲。进入章节后,将显示新的大纲,其中插入并突出显示了子章节的标题。

\documentclass{beamer}

\mode<presentation>{%
  %% At the begin of a section, insert a short outline
  \AtBeginSection[]{%
    \begin{frame}<beamer>%
      \frametitle{Outline}
      \tableofcontents[currentsection,subsectionstyle=show/shaded/hide]%
    \end{frame}%
  }%
  %% 
  %% Same for Subsections
  \AtBeginSubsection[]{%
    \begin{frame}<beamer>%
      \frametitle{Outline}
      \tableofcontents[currentsection,subsectionstyle=show/shaded/hide]%
    \end{frame}}%
}
\begin{document}


\begin{frame}{Outline}
    \tableofcontents[currentsection,sectionstyle=show,hideothersubsections]
\end{frame}

\section{One}

\subsection{OneOne}
\begin{frame}
    There is nothing here.
\end{frame}

\subsection{OneTwo}
\begin{frame}
    There is nothing here.
\end{frame}


\section{Two}

\subsection{TwoOne}
\begin{frame}
    There is nothing here.
\end{frame}

\subsection{TwoTwo}
\begin{frame}
    There is nothing here.
\end{frame}

\end{document}

相关内容