(Beamer)无框架标题,无冗余垂直间距

(Beamer)无框架标题,无冗余垂直间距

在 Berkeley 主题中,我有一些幻灯片有框架标题,还有一些幻灯片没有框架标题。对于没有框架标题的幻灯片,我希望标题区域的垂直空间为零。我该怎么做?

我提供了一个简单的示例代码。

\documentclass[11pt,t]{beamer}
\hypersetup{pdfencoding=auto}
%\usefonttheme{professionalfonts}
\usefonttheme[onlymath]{serif}
\usetheme{Berkeley}

\begin{document}
\begin{frame}
\frametitle{This has frametitle}
contents
\end{frame}

\begin{frame}
contents without frametitle
\end{frame}
\end{document}

答案1

您可以删除这些框架的标题,然后强制重新计算页面几何形状:

\documentclass[11pt,t]{beamer}
\hypersetup{pdfencoding=auto}
%\usefonttheme{professionalfonts}
\usefonttheme[onlymath]{serif}
\usetheme{Berkeley}

\makeatletter
\newcommand{\calculateheadfoot}{\beamer@calculateheadfoot}
\makeatother

\begin{document}
\begin{frame}
\frametitle{This has frametitle}
contents
\end{frame}

{
\setbeamertemplate{headline}{}
\calculateheadfoot
\begin{frame}
contents without frametitle
\end{frame}
}

\begin{frame}
\frametitle{This has frametitle}
contents
\end{frame}
\end{document}

更新:

随着当前 beamer 开发版本(应包含在 beamer v3.70 或更新版本中),beamer 现在会在每帧开始时重新计算头部和脚部的高度,因此不再需要解决方法:

\documentclass[11pt,t]{beamer}
\hypersetup{pdfencoding=auto}
%\usefonttheme{professionalfonts}
\usefonttheme[onlymath]{serif}
\usetheme{Berkeley}


\begin{document}
\begin{frame}
\frametitle{This has frametitle}
contents
\end{frame}

{
\setbeamertemplate{headline}{}
\begin{frame}
contents without frametitle
\end{frame}
}

\begin{frame}
\frametitle{This has frametitle}
contents
\end{frame}
\end{document}

相关内容