我已经花了 4 个小时在 Google 上寻找解决问题的方法,但仍然不可能!
情况如下:我在演示文稿中使用Warsaw
主题创建了一些框架,在第一个框架中,我想删除标题和脚注,因此我使用了\begin{frame}[plain]
,但我想在下一个框架中保留脚注但只隐藏标题。
我尝试了以下操作:
{
\setbeamertemplate{headline}{} %or \setbeamertemplate{headline}[default]
\begin{frame}{Sommaire}
\tableofcontents
\end{frame}
}
但是,虽然删除了标题的内容,但空间仍然为空白(因为空间已被使用,但无法用于我的内容)。因此,我的框架标题下方有一个空白区域...(目录)。
我不想在这里的标题中显示我的演示计划,因为它是一个显示计划的框架......
这里有人能帮助我吗?
答案1
好的,经过进一步调查(在 beamer 源中 :)),我找到了解决方案。对于将来像我一样搜索的人,这里有一个简单的小例子:
{ % to delimit a block (we only want to remove the header for this frame)
\makeatletter % to change template
\setbeamertemplate{headline}[default] % not mandatory, but I though it was better to set it blank
\def\beamer@entrycode{\vspace*{-\headheight}} % here is the part we are interested in :)
\makeatother
\begin{frame}{Table of contents} % and our simple frame
\tableofcontents
\end{frame}
}
还可以定义一个环境以便更轻松地使用它。为此,请在之前使用以下代码\begin{document}
:
\makeatletter
\newenvironment{withoutheadline}{
\setbeamertemplate{headline}[default]
\def\beamer@entrycode{\vspace*{-\headheight}}
}{}
\makeatother
对于您的框架:
\begin{withoutheadline}
\begin{frame}{Table of contents} % and our simple frame
\tableofcontents
\end{frame}
\end{withoutheadline}
希望这会有所帮助:)
享受!
答案2
\makeatletter
\newenvironment{noheadline}{
\setbeamertemplate{headline}{}
\addtobeamertemplate{frametitle}{\vspace*{-0.9\baselineskip}}{}
}{}
\makeatother
通过这个小修改,您可以将 noheadline 环境用于多张幻灯片。
\begin{noheadline}
\begin{frame}{Table of contents} % and our simple frame
\tableofcontents
\end{frame}
\begin{frame}{Table of contents 2} % and our simple frame
\tableofcontents
\end{frame}
\end{noheadline}