Estaba leyendo la respuesta a esta pregunta.Mezclar sobreimpresión con bloques de enumeraciones
[Vuelvo a copiar el código para que no tengas que seguir el enlace]
\documentclass{beamer}
\usetheme{Warsaw}
\begin{document}
\begin{frame}{Test}
\begin{center}
text before
\pause
\begin{overlayarea}{\textwidth}{3.3cm}
\only<2-3>{%
\begin{block}{Some title here}
\begin{enumerate}[<+->]
\item One
\item Two
\end{enumerate}
\end{block}}
\only<4-7>{%
\begin{block}{Some title here}
\begin{enumerate}[<+(2)->]
\item CHicken
\item Duck
\item Rooster
\end{enumerate}
\end{block}}
\end{overlayarea}
text after
\end{center}
\end{frame}
\end{document}
y noté el uso de un número entre paréntesis en la especificación de superposición incrementada predeterminada en el segundo enumerate
entorno. (ver la presencia de [<+(2)->]
) Sólo entonces se descubrirán incrementalmente los elementos de la segunda lista numerada en el overlayarea
entorno.
¿Por qué es necesario? ¿Parece implicar que beamerpauses
se restablece entre los enumerate
entornos? ¿O se restablece entre los only
comandos del overlay
entorno?
¿No es un comportamiento desagradable? Porque es como si usted mismo tuviera que estar al tanto de las pausas de los proyectores. Entonces se pierde la utilidad de [<+->]
, ¿no?
Respuesta1
El fenómeno aparentemente extraño se puede explicar examinando el siguiente ejemplo sencillo:
\documentclass{beamer}
\newcommand\showpauses{The value of beamerpauses at this point in slide \insertpagenumber\ is: \thebeamerpauses}
\begin{document}
\begin{frame}{Test}
\only<1-2>{\par\showpauses%
\begin{enumerate}[<+->]
\item One \showpauses
\item Two \showpauses
\end{enumerate}
}
\only<3>{\par\showpauses}
\end{frame}
\end{document}
Después de procesar el documento, tendrás una presentación de tres diapositivas que muestra el valor del beamerpauses
contador en diferentes etapas.
Hasta la diapositiva dos, todo va como era de esperar: al final de la enumerate
diapositiva dos, el valor de beamerpauses
es tres; sin embargo, en la diapositiva tres, beamerpauses
sí 1
. ¿Por qué pasó esto? Bueno, debido a que la especificación de superposición \only
era 1-2
, entoncestodolo que sucede en las diapositivas 1 y 2 ocurrirá solo para esas diapositivas; en particular, el escalonamiento beamerpauses
producido por el empadronado tendrá efectosolopara las diapositivas uno y dos. En la tercera diapositiva, que no está bajo el efecto del \only
, el contador beamerpauses
tendrá el valor que tenía antes.
¿Esto muestra algo malo beamer
? No me parece; después de todo, el significado esperado de \only
es mantener las cosas dentro de su alcance.solopara las diapositivas especificadas.
Si usa <1->
(o <1-3>
) en lugar de <1-2>
en el ejemplo anterior, como en
\documentclass{beamer}
\newcommand\showpauses{The value of beamerpauses at this point in slide \insertpagenumber\ is: \thebeamerpauses}
\begin{document}
\begin{frame}{Test}
\only<1->{\par\showpauses%
\begin{enumerate}[<+->]
\item One \showpauses
\item Two \showpauses
\end{enumerate}
}
\only<3>{\par\showpauses}
\end{frame}
Verás que ahora en la diapositiva tres el contador tiene el valor tres, porque la tercera diapositiva está bajo el alcance de \only
.
El incremento manual "sucio" del contador en el ejemplo original se debió simplemente al efecto especial que el OP quería lograr. ¿Quizás este mismo efecto podría lograrse de otra forma, sin intervención manual?