禁止输出 Beamer 中没有编号的幻灯片编号

禁止输出 Beamer 中没有编号的幻灯片编号

有一个关于如何不给某些幻灯片编号的问题:Beamer:\nonumber 相当于幻灯片吗?

但是幻灯片本身仍印有编号。我如何才能抑制该输出?

梅威瑟:

\documentclass{beamer}

\usetheme{Dresden} 

\setbeamertemplate{footline}[frame number]{}

\begin{document}

%do not want slide number here
\begin{frame}[noframenumbering]
 \titlepage 
\end{frame}

\begin{frame}
Some actual content here
\end{frame}

%and here
\begin{frame}[noframenumbering]
{\Huge Section 2}
\end{frame}

\begin{frame}
Some more actual content here
\end{frame}

%and possibly on 20 more slides 
%without specifying format for each of special slides
%every time

\end{document}

答案1

如何摆脱帧号基本上有三个选项:

  1. 通过以下方式删除头线和尾线:
\begin{frame}[noframenumbering, plain]...
  1. 暂时清除脚线
 { \setbeamertemplate{footline}{} \begin{frame}[noframenumbering] \titlepage \end{frame} }
  1. 暂时重新定义脚线

这在很大程度上取决于所使用的外部主题。\setbeamertemplate{footline}[frame number]{}在 MWE 中使用时,与选项 2 相比,这没有任何优势。


为了使大量帧自动执行此操作,可以定义自定义键。以下示例说明了如何与选项 2 配合使用。

\documentclass{beamer}
\usetheme{Dresden}

\usepackage{etoolbox}

\defbeamertemplate{footline}{nonum}{%
    \addtocounter{framenumber}{-1}
}

\BeforeBeginEnvironment{frame}{%
\setbeamertemplate{footline}[frame number]{}
}

\makeatletter
\define@key{beamerframe}{nonum}[true]{%
    \setbeamertemplate{footline}[nonum]%
}
\makeatother

\begin{document}

    \begin{frame}[nonum]
        Removeframenumber
    \end{frame}

    \begin{frame}
        normal frame
    \end{frame}

\end{document}

答案2

我想说最好的办法是链接noframenumbering以抑制打印;这可以使用以下切换来完成:

\setbeamertemplate{navigation symbols}{
\ifbeamer@noframenumbering
\else
  \usebeamerfont{page number in head/foot}
  \usebeamercolor[fg]{page number in head/foot}%
  \hbox to 2cm{\hfil\insertframenumber/\inserttotalframenumber\hfil}
  \vskip2pt\relax
\fi%
}

相关内容