Considere el siguiente MWE que utiliza esterespuestapara generar un marcador para cada fotograma:
\documentclass{beamer}
\usepackage{etoolbox}
\usepackage{lmodern}
\usepackage{lipsum}
\usepackage{bookmark}
\makeatletter
\apptocmd{\beamer@@frametitle}{%
\only<1>{\bookmark[page=\the\c@page,level=3]{#1}}}%
\makeatother
\begin{document}
\begin{frame}
\frametitle{Foo}
\end{frame}
\begin{frame}[allowframebreaks]
\frametitle{Baz}
\lipsum
\end{frame}
\end{document}
Cuando allowframebreaks
se da la opción esto significa que se genera un marcador para cada uno de los nuevos fotogramas creados por la opción mencionada. Quiero que los marcadores de estos fotogramas de "continuación" tengan el título de fotograma adecuado (es decir, "Baz II" en lugar de solo "Baz") o simplemente generen un marcador para el primer fotograma y no para los creados por la allowframebreak
opción.
Respuesta1
Insertar recuento de continuación en el marcador
La idea básica detrás de este enfoque es verificar si \insertcontinuationcount
es mayor que 0. En este caso, el recuento de continuación se agrega al marcador.
\documentclass{beamer}
\usepackage{etoolbox}
\usepackage{lmodern}
\usepackage{lipsum}
\usepackage{bookmark}
\makeatletter
\apptocmd{\beamer@@frametitle}{%
\only<1>{\bookmark[page=\the\c@page,level=3]{#1 \expandafter\ifnum\insertcontinuationcount>0\relax\insertcontinuationcount\fi}}}%
\makeatother
\begin{document}
\begin{frame}
\frametitle{Foo}
\end{frame}
\begin{frame}[allowframebreaks]
\frametitle{Baz}
\lipsum
\end{frame}
\end{document}
Sólo marcadores para el primer fotograma
Este enfoque es muy similar al anterior. Pero ahora, solo se agrega un marcador si es \insertcontinuationcount
menor que 2, porque es 0 para fotogramas "normales" o 1 para el primer fotograma de una continuación.
\documentclass{beamer}
\usepackage{etoolbox}
\usepackage{lmodern}
\usepackage{lipsum}
\usepackage{bookmark}
\makeatletter
\apptocmd{\beamer@@frametitle}{%
\only<1>{\expandafter\ifnum\insertcontinuationcount<2\relax\bookmark[page=\the\c@page,level=3]{#1}\fi}}%
\makeatother
\begin{document}
\begin{frame}
\frametitle{Foo}
\end{frame}
\begin{frame}[allowframebreaks]
\frametitle{Baz}
\lipsum
\end{frame}
\end{document}