程式碼

程式碼

我正在使用投影機做一個演示,它很長。這是分節的紅利,在每個節結束時我都會休息一下。因此,我希望對當前幻燈片有一個雙計數器。例如:假設我目前位於第2 部分的第3 張投影片(由20 張投影片組成),而第1 部分由50 張投影片組成,則第一個計數器將為3/20,而第二個計數器將為53/70(如果只有兩個部分) )。

這是我的工作環境:

\documentclass[t,10pt,xcolor=dvipsnames]{beamer}
 \mode<presentation>
 {
 \usetheme{AnnArbor}
 \setbeamercovered{transparent}
\useinnertheme{rounded}
   \usecolortheme{spruce}
 }

  \setbeamercolor{section in head/foot}{fg=White}
\section{Sec1}
\subsection{Sub 1}
\begin{frame}{Fra 1}
\end{frame}
\begin{frame}{Fra 2}
\end{frame}
\begin{frame}{Fra 3}
\end{frame}
\section{Sec2}
\subsection{Sub 1}
\begin{frame}{Fra 1}
\end{frame}
\begin{frame}{Fra 2}
\end{frame}
\end{document}

有什麼幫助嗎?

答案1

不需要新的計數器,只需要一些計算。 Beamer 在巨集\insertsectionstartpage和中儲存節開始和結束的頁碼\insertsectionendpage。因此,一個部分中的頁數可以透過以下方式計​​算

\insertsectionendpage-\insertsectionstartpage+1

節內的頁碼是

\insertframenumber-\insertsectionstartpage+1

其中\insertframenumber儲存當前幀的頁碼。

\patchcmd使用from package修補這些內容etoolbox到插入 footline 的 Beamer 命令\beamer@@tmpl@footline,您將在腳線的左側看到節頁計數器,在右側看到總頁計數器。

程式碼

\documentclass[t,10pt,xcolor=dvipsnames]{beamer}

\usepackage{etoolbox}

\mode<presentation>
{
  \usetheme{AnnArbor}
  \setbeamercovered{transparent}
  \useinnertheme{rounded}
  \usecolortheme{spruce}
}
\setbeamercolor{section in head/foot}{fg=White}

\makeatletter
% change author box alignment 
\patchcmd{\beamer@@tmpl@footline}% <cmd>
  {center}% <search>
  {left}% <replace>
  {}% <success>
  {}% <failure>

% add page to author box
\patchcmd{\beamer@@tmpl@footline}% <cmd>
  {\usebeamerfont{author in head/foot}\insertshortauthor\expandafter\beamer@ifempty\expandafter{\beamer@shortinstitute}{}{~~(\insertshortinstitute)}}% <search>
  {\def\sectotpage{\number\numexpr\insertsectionendpage-\insertsectionstartpage+1}%
   \def\pageinsec{\number\numexpr\insertframenumber-\insertsectionstartpage+1}%
   \rlap{\hspace*{2ex}\pageinsec{} / \sectotpage} \hfill
  \usebeamerfont{author in head/foot}\insertshortauthor\expandafter\beamer@ifempty\expandafter{\beamer@shortinstitute}{}{~~(\insertshortinstitute)}}% <replace>
  {}% <success>
  {}% <failure>
\makeatother

\author{Author}

\begin{document}
\newcommand\nf{\frame{Frame in Section~\thesection.}}

\section{Sec 1}
\nf\nf\nf\nf\nf

\section{Sec 2}
\nf\nf\nf\nf\nf\nf

\section{Sec 3}
\nf\nf\nf\nf\nf\nf\nf

\end{document}

輸出

在此輸入影像描述

相關內容