我正在使用 Szeged 主题整理一些幻灯片。我省略了框架标题,而是使用小节标题来显示所需的框架信息。在第一部分中,我希望将所有导航点放在一行上,但在第二部分中,我希望导航点显示在两行中。下面的代码导致导航栏在第 1 部分看起来正确,但在第 2 部分看起来不正确。删除后面的“压缩”会导致\documentclass
导航栏在第 2 部分看起来正确,但在第 1 部分看起来不正确。理想情况下,我希望\documentclass
仅将压缩选项应用于第一部分。
\documentclass[compress, usepdftitle=false]{beamer}
\mode<presentation>
\usetheme{Szeged}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage[english]{babel}
\usepackage{pgf}
\usepackage{times}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\begin{document}
\section{Section 1}
\subsection{Some Title}
\begin{frame}
...
\end{frame}
\subsection{Some Different Title}
\begin{frame}
...
\end{frame}
\section{Section 2}
\subsection{This is a line graph}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\subsection{This is a bar chart}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\end{document}
编辑- 理想的解决方案是在为小节标题保留的空间中显示框架标题,但是我还没有找到如何做到这一点。我确信这可以通过制作自定义主题来实现,但这超出了我的乳胶专业知识范围,不幸的是我目前没有时间学习。如果这可以在不修改 .sty 文件的情况下实现,那么这肯定会回答我的问题。
答案1
您可以定义自己的宏\compresson
并\compressoff
控制compress
使用该选项的部分:
\makeatletter
\newcommand*{\compresson}{\addtocontents{nav}{\protect\headcommand{\protect\beamer@compresstrue}}}
\newcommand*{\compressoff}{\addtocontents{nav}{\protect\headcommand{\protect\beamer@compressfalse}}}
\makeatother
使用这些宏,您可以实现所需的输出,如下所示:
\documentclass[usepdftitle=false]{beamer}
\mode<presentation>
\usetheme{Szeged}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage[english]{babel}
\usepackage{pgf}
\usepackage{times}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\makeatletter
\newcommand*{\compresson}{\addtocontents{nav}{\protect\headcommand{\protect\beamer@compresstrue}}}
\newcommand*{\compressoff}{\addtocontents{nav}{\protect\headcommand{\protect\beamer@compressfalse}}}
\makeatother
\begin{document}
\compresson
\section{Section 1}
\subsection{Some Title}
\begin{frame}
...
\end{frame}
\subsection{Some Different Title}
\begin{frame}
...
\end{frame}
\compressoff
\section{Section 2}
\subsection{This is a line graph}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\subsection{This is a bar chart}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\begin{frame}
...
\end{frame}
\end{document}