我喜欢在框架中使用\allowframebreaks
不同的选项\framesubtitle
。解决方案由samcarter_is_at_topanswers.xyz在帧中断后更改帧字幕满足我的愿望,但是我想改变帧的编号方式。\Roman
我喜欢\arabic
用以下方式编号,而不是数字
(<frame number>/<number of slides in frame>)
当框架有三张幻灯片时,编号分别为 (1/3)、(2/3) 和 (3/3)。如何实现?
给定链接中的代码是:
\documentclass{beamer}
\makeatletter
\newcommand*{\slideinframe}{\number\beamer@slideinframe}
\newcounter{bar}
\newcommand{\foo}{%
\setcounter{bar}{\insertframeendpage}%
\addtocounter{bar}{-\insertframestartpage}%
\addtocounter{bar}{1}%
(\slideinframe/\thebar)%
}
\makeatother
\usepackage{lipsum}
\begin{document}
\begin{frame}%[allowframebreaks]
\frametitle{Foo \foo}
\only<+>{
\framesubtitle{Bar}
}
\lipsum[1]
%\framebreak
\only<+>{
\framesubtitle{Baz}
}
\color{red}\lipsum[2]
\end{frame}
\end{document}
它做什么,但考虑@samcarter_is_at_topanswers.xyz 答案框架中建议的解决方案未在幻灯片上划分:
但是当我取消注释上述 MWE 中的行时,幻灯片出现了,但是编号不再按预期工作......
答案1
您可以从框架的起始页和结束页计算框架内的幻灯片总数:
\documentclass{beamer}
\newcounter{bar}
\newcommand{\foo}{%
\setcounter{bar}{\insertframeendpage}%
\addtocounter{bar}{-\insertframestartpage}%
\addtocounter{bar}{1}%
(\insertoverlaynumber/\thebar)%
}
\usepackage{lipsum}
\begin{document}
\begin{frame}
\frametitle{Foo \foo}
\only<+>{
\framesubtitle{Bar}
\lipsum[1]
}
\only<+>{
\framesubtitle{Baz}
\color{red}\lipsum[2]
}
\end{frame}
\end{document}