Gruppierte Formatierungsbefehle in Overlays automatisch auslösen

Gruppierte Formatierungsbefehle in Overlays automatisch auslösen

Ich hätte gerne eine Ausgabe, die ungefähr wie folgt aussieht:

\documentclass{beamer}
\begin{document}

\begin{frame}[<+->]{Sampling}
\begin{itemize}
\item A random sample of ten people from the US will \alt<5>{{\color{blue}on average}}{on average} produce
five men and five women, but... \uncover<+->{ any given trial is likely to over-represent one sex and underrepresent
the other.}
\item Analogy: if you flip a fair coin 10 times, \alt<5>{{\color{blue}on average}}{on average} you'll get 5
heads and 5 tails, but... \uncover<+->{ sometimes we might get 7 heads and 3 tails, and other times 8 tails
and 2 heads.}
\item What does ``\alt<5>{{\color{blue}on average}}{on average}'' mean above?
\item It means that if we were to take a lot of samples.... blah blah.
\end{itemize}
\end{frame}

\end{document}

Anstelle von \alt<5>{{\color{blue}on average}}{on average}möchte ich jedoch \groupA{on average}für die ersten beiden Instanzen von „on average“ und für die dritte und letzte Instanz etwas wie verwenden \revealGroupA{on average}. Das heißt, ich möchte den folgenden Code schreiben, aber dieselbe Ausgabe wie oben erzielen:

\documentclass{beamer}
\begin{document}

\begin{frame}[<+->]{Sampling}
\begin{itemize}
\item A random sample of ten people from the US will \groupA{on average} produce
five men and five women, but... \uncover<+->{ any given trial is likely to over-represent one sex and underrepresent
the other.}
\item Analogy: if you flip a fair coin 10 times, \groupA{on average} you'll get 5
heads and 5 tails, but... \uncover<+->{ sometimes we might get 7 heads and 3 tails, and other times 8 tails
and 2 heads.}
\item What does ``\revealGroupA{on average}'' mean above?
\item It means that if we were to take a lot of samples.... blah blah.
\end{itemize}
\end{frame}

\end{document}

Einige Notizen:

  • Im Beispiel ist das Argument („im Durchschnitt“) immer dasselbe, in anderen Anwendungsfällen ist das jedoch nicht der Fall.

  • Ich mache das auch oft in der Mathematik, daher wäre es schön, wenn der Befehl sowohl in der Mathematik als auch außerhalb davon funktionieren würde.

  • Ich würde diesen Mechanismus wahrscheinlich in mehreren verschiedenen Frames derselben Datei verwenden.

  • Ich bin mir nicht sicher, ob das relevant ist, aber ich plane, die Antwort zu erweitern, um auch einen Befehl zu erstellen , der im Wesentlichen dasselbe tut, aber eine andere Farbe verwendet. Der Grund dafür ist, dass ich möglicherweise beides und im selben Rahmen \groupBverwenden möchte .\groupA\groupB

Antwort1

Sie können das totcountPaket verwenden, um die Overlay-Nummer zu speichern, unter der Ihre Gruppe zwischen den Kompilierungen angezeigt werden soll (verwenden Sie nicht dieselbe Gruppe in verschiedenen Frames erneut):

\documentclass{beamer}


\makeatletter
\newcommand*{\slideinframe}{\beamer@slideinframe}
\makeatother

\usepackage{totcount}


\setbeamercolor{alerted text}{fg=blue}

\newcounter{overlaygroupA}
\setcounter{overlaygroupA}{0}

\newcommand{\revealGroupA}[1]{%
  \only<.>{\setcounter{overlaygroupA}{\slideinframe}}%
  \alert<.>{#1}%
}

\newcommand{\groupA}[1]{%
  \alert<\totvalue{overlaygroupA}>{#1}%
}

\regtotcounter{overlaygroupA}

\begin{document}

\begin{frame}[<+->]{Sampling}
\begin{itemize}
\item A random sample of ten people from the US will \groupA{on average} produce
five men and five women, but... \uncover<+->{ any given trial is likely to over-represent one sex and underrepresent
the other.}
\item Analogy: if you flip a fair coin 10 times, \groupA{on average} you'll get 5
heads and 5 tails, but... \uncover<+->{ sometimes we might get 7 heads and 3 tails, and other times 8 tails
and 2 heads.}
\item What does ``\revealGroupA{on average}'' mean above?
\item It means that if we were to take a lot of samples.... blah blah.
\end{itemize}

\end{frame}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen