
Beamer 顯示過多的頁碼,因為它將每個 \pause 命令視為額外頁面,從技術上講,它位於 PDF 中,但邏輯上並非如此。
繼回答類似的問題,我嘗試過
\setbeamertemplate{footline}[frame number]{}
,但是這引入了相反的問題,\only
即僅使用該命令對頁面進行一次計數,即使這些在邏輯上是多張幻燈片。
在計算腳線中的頁數/幀數時,有沒有辦法只忽略\pause
但仍然遵循?\only
例子
\documentclass{beamer}
\usepackage[utf8x]{inputenc}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}[frame number]
\begin{document}
\begin{frame}{Slide with Pause}
This should all be slide one.\\
One\pause{} Two\pause{} Three
\end{frame}
\begin{frame}{Slide with Only}
\only<1>{This should be page 2.}
\only<2>{This should be page 3.}
\end{frame}
\end{document}
如果我使用“頁碼”,我會得到 5 頁。如果我使用“幀號”,我會得到 2 頁。不過我想要 3 頁。
答案1
顯而易見的解決方案:說實話
\begin{frame}{Slide without Only}
This should be page 2.
\end{frame}
\begin{frame}{Slide without Only}
This should be page 3.
\end{frame}
完整的mwe:
\documentclass{beamer}
\usepackage{ulem}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}[frame number]
\begin{document}
\begin{frame}{Slide with Pause}
This should all be \sout{slide} frame \insertframenumber.\\
(page \insertpagenumber, slide \insertslidenumber)\par\pause
(page \insertpagenumber, slide \insertslidenumber)\par\pause
\end{frame}
\begin{frame}{Slide without Only}
This is the \sout{slide} frame \insertframenumber.
(page \insertpagenumber, slide \insertslidenumber)
\end{frame}
\begin{frame}{Slide without Only}
This is \sout{slide} frame \insertframenumber.
(page \insertpagenumber, slide \insertslidenumber)
\end{frame}
\end{document}
不必要的複雜解決方案:隱藏和撒謊
\begin{frame}{Slide with Only}
\only<1>{This should be page 2.}
\only<2>{\addtocounter{framenumber}{1}This should be page 3.}
\end{frame}
完整的mwe:
\documentclass{beamer}
\usepackage{ulem}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}[frame number]
\begin{document}
\begin{frame}{Slide with Pause}
This should all be \sout{slide} frame \insertframenumber.\\
(page \insertpagenumber, slide \insertslidenumber)\par\pause
(page \insertpagenumber, slide \insertslidenumber)\par\pause
\end{frame}
\begin{frame}{Slide with Only}
\only<1>{This should be \sout{slide} frame \insertframenumber.
(but page in \insertpagenumber, slide \insertslidenumber)}
\only<2>{\addtocounter{framenumber}{1}This should be \sout{slide} frame \insertframenumber.
(but page in \insertpagenumber, slide \insertslidenumber)}
\end{frame}
\end{document}