我正在准备一个关于 Beamer 的演示文稿,我将有不同的部分。我想为每个部分添加一个标题页和目录。特别是,每个部分都有一个目录,其中只包含该部分的条目。例如,假设我有
中学一年级
1.1. 子节 1
1.2. 子节 2
中学二年级
2.1. 子节 1
2.2. 子节 2
2.3. 子节 3
中学 3
3.1. 子节 1
3.2 子节 2
在第 2 节开始时,我想要一张显示标题为“第 2 节”的幻灯片,在下一张幻灯片中,我希望看到:2. 第 2 节
2.1. 子节 1
2.2. 子节 2
2.3. 子节 3
我使用了以下代码:
\documentclass[t,10pt]{beamer}
\title{My presentation}
\date[February 11, 2015] % (optional)
{}
\def\sectionname{\translate{Section}}
\setbeamertemplate{section page}
{
\begin{centering}
\vskip1em\par
\vspace{3cm}
\begin{beamercolorbox}[sep=4pt,center]{part title}
\usebeamerfont{section title}\insertsection\par
\end{beamercolorbox}
\end{centering}
}
\setbeamertemplate{section page2}
{\tableofcontents[currentsection, sectionstyle=show, subsectionstyle=show]}
\def\sectionpage{\usebeamertemplate*{section page}}
\def\sectionpageBis{\usebeamertemplate*{section page2}}
\AtBeginSection{\frame{\sectionpage} \frame{\sectionpageBis}}
\begin{document}
\setbeamertemplate{blocks}[rounded][shadow=true]
\begin{frame}
\titlepage
\end{frame}
\addtocounter{framenumber}{-1}
\linespread{1.5}
\begin{frame}{Outline}
\footnotesize
\tableofcontents[subsectionstyle=hide]
% You might wish to add the option [pausesections]
\end{frame}
\section{Section 1}
\subsection{sub 1}
\subsection{sub 2}
\section{Section 2}
\subsection{sub 1}
\subsection{sub 2}
\subsection{sub 3}
\section{Section 3}
\subsection{sub 1}
\subsection{sub 2}
\end{document}
标题页效果很好。但是目录显示了其他部分和其他子部分的名称。有人能帮忙吗?谢谢
答案1
尝试将您的定义更改section page2
为以下内容:
\setbeamertemplate{section page2}
{\tableofcontents[currentsection, sectionstyle=show/hide, subsectionstyle=show/show/hide]}
对于sectionstyle
,show/hide
表示显示当前部分并隐藏其他部分。对于subsectionstyle
,三个选项分别针对当前子部分、同一部分内的其他子部分以及不同部分中的其他子部分。您还可以选择shaded
,这会使条目变得有些透明。beamer
有关详细信息,请参阅文档第 10.5 节。
完整代码:
\documentclass[t,10pt]{beamer}
\title{My presentation}
\date[February 11, 2015] % (optional)
{}
\def\sectionname{\translate{Section}}
\setbeamertemplate{section page}
{
\begin{centering}
\vskip1em\par
\vspace{3cm}
\begin{beamercolorbox}[sep=4pt,center]{part title}
\usebeamerfont{section title}\insertsection\par
\end{beamercolorbox}
\end{centering}
}
\setbeamertemplate{section page2}
{\tableofcontents[currentsection, sectionstyle=show/hide, subsectionstyle=show/show/hide]}
\def\sectionpage{\usebeamertemplate*{section page}}
\def\sectionpageBis{\usebeamertemplate*{section page2}}
\AtBeginSection{\frame{\sectionpage} \frame{\sectionpageBis}}
\begin{document}
\setbeamertemplate{blocks}[rounded][shadow=true]
\begin{frame}
\titlepage
\end{frame}
\addtocounter{framenumber}{-1}
\linespread{1.5}
\begin{frame}{Outline}
\footnotesize
\tableofcontents[subsectionstyle=hide]
% You might wish to add the option [pausesections]
\end{frame}
\section{Section 1}
\subsection{sub 1}
\subsection{sub 2}
\section{Section 2}
\subsection{sub 1}
\subsection{sub 2}
\subsection{sub 3}
\section{Section 3}
\subsection{sub 1}
\subsection{sub 2}
\end{document}