我正在尝试使用演示文稿末尾的一个部分,但没有任何框架,如下面的 MWE 所示:
\documentclass{beamer}
\begin{document}
\begin{frame}{TOC}
\tableofcontents
\end{frame}
\section{The first section}
\begin{frame}
Some text.
\end{frame}
\section{The second section}
\end{document}
这将生成一个仅包含 的目录The first section
。我希望获得一个另外显示 的目录The second section
。
当然,我可以为第二部分使用虚拟框架,但是有什么方法可以避免为第二部分添加框架吗?
答案1
问题是,如果没有其他页面跟进,内容就不会写入 toc 文件。你可以像这样规避这个问题:
\documentclass{beamer}
\makeatletter
\newcommand\immaddtocontents[1]{{%
\let\protect\@unexpandable@protect
\immediate\write\@auxout{\noexpand\@writefile{toc}{#1}}%
}}
\makeatother
\begin{document}
\begin{frame}{TOC}
\tableofcontents
\end{frame}
\section{The first section}
\subsection{blub}
\begin{frame}
Some text.
\end{frame}
\section{The first section}
\subsection{blub}
\begin{frame}
Some text.
\end{frame}
\immaddtocontents{\vfill \protect\usebeamercolor[fg]{section in toc} text\par}
\immaddtocontents{\leavevmode\leftskip=1.5em \protect\usebeamercolor[fg]{normal text}text\par}
\end{document}