Ich verwende Beamer und Smashoperator wie folgt:
\documentclass[xcolor={rgb}]{beamer}
\setbeamercovered{transparent}
\beamertemplatenavigationsymbolsempty
\setbeamersize{text margin left=10mm,text margin right=5mm}
\setbeamertemplate{frametitle}[default][center]
\usepackage{mathtools}
\usepackage{bm}
\newcommand{\var}[1]{\operatorname{var}{#1}}
\newcommand{\E}{\mathbb{E}}
\newcommand{\norm}[1]{\left\lVert#1\right\rVert}
\begin{document}
\begin{frame}[t]
\begin{align*}
\onslide<2->{&= \E\Bigl( g(a)^2 \smashoperator{\sum_{j\in[n]\backslash\{a\}}} f^2_j Y^2_j + \smashoperator{\sum_{\substack{j\in[n]\setminus\{a\}\\i\ne j}}} f_i f_j g(i) g(j) Y_i B_j\Bigr) -{}\\}
\onslide<2->{&\qquad\qquad\qquad\qquad \Bigl(\smashoperator{\sum_{j\in[n]\backslash\{a\}}} f_j \mathbb{E}[g(a)g(j)Y_j]\Bigr)^2\\[\jot]}
\onslide<3->{&= \sum_{j\in[n]\backslash\{a\}} \frac{f^2_j}{k} + 0 - 0\\[\jot]}
\end{align*}
\end{frame}
\end{document}
Dies führt jedoch zu einem merkwürdigen Ergebnis.
Gibt es eine Möglichkeit, das zu beheben?
Antwort1
Es funktioniert tatsächlich, wenn Sie hinzufügen
\everymath{\def\sbox#1#2{\setbox#1\hbox{{#2}}}}
obwohl das keine wirkliche Lösung ist.
\sbox
zusätzlich zum \setbox
Primitiv wird die aktuelle Farbe nach oben und unten verschoben, aber der hellgraue transparente Effekt ist dafür nicht ausgelegt...
Dies erfordert einen etwas rigorosen Ansatz und entfernt das Farb-Push/Pop für alle Sboxen im Mathematikmodus.
Antwort2
Ihr \onslide
beginnt mit &
. Das heißt, es beginnt in einer tabellarischen/ausgerichteten Zelle und wird in der nächsten fortgesetzt. Tabellarische Zellen bilden Gruppen, und obwohl Beamer Code enthält, der Farbmixins erlaubt, Gruppen zu überstehen, schlägt er hier teilweise fehl, da es zwei Gruppenebenen gibt. Dies betrifft \smashoperator, da es einen \sbox-Befehl enthält, der einen Farbbefehl ausgibt, jetzt jedoch mit der falschen Farbe.
Ich bezweifle, dass eine echte Lösung möglich ist. Workarounds sind:
- Verschieben Sie die
&
außerhalb der\onslide
, so dass sie nicht mehr mehr als eine Gruppe abdeckt. - Drücken Sie die Taste a,
\color{.}
um die Farbe zurückzusetzen.
\documentclass[]{beamer}
\setbeamercovered{transparent}
\setbeamertemplate{navigation symbols}{}
\newsavebox\testbox
\begin{document}
\begin{frame}[plain,t]
\begingroup\begingroup
\onslide<2->{\sbox\testbox{111}\usebox\testbox\endgroup %works
\sbox\testbox{222}\usebox\testbox\endgroup %still works
\sbox\testbox{333}\usebox\testbox} %fails
\begingroup\begingroup
\onslide<2->{\sbox\testbox{111}\usebox\testbox\endgroup
\sbox\testbox{222}\usebox\testbox\endgroup
\color{.}\sbox\testbox{333}\usebox\testbox} %work around
\end{frame}
\end{document}
Antwort3
Ich kann nicht erklären, was hier schief läuft \smashoperator
, aber ich kann eine praktikable Alternative vorschlagen: die Anwendung \mathclap
auf das Untersatzargument von \sum
.
Folie 1:
Folie 2:
Folie 3:
\documentclass[xcolor={rgb}]{beamer}
\setbeamercovered{transparent}
\beamertemplatenavigationsymbolsempty
\setbeamersize{text margin left=10mm,text margin right=5mm}
\setbeamertemplate{frametitle}[default][center]
\usepackage{mathtools,bm}
\newcommand{\var}[1]{\operatorname{var}{#1}}
\DeclareMathOperator{\E}{\mathbb{E}}
\DeclarePairedDelimiter{\norm}{\lVert}{\rVert}
\begin{document}
\begin{frame}[t]
\begin{align*}
\onslide<1->{&= \E\Bigl( g(a)^2
\sum_{\mathclap{j\in[n]\setminus\{a\}}} f^2_j Y^2_j +
\sum_{\mathclap{\substack{j\in[n]\setminus\{a\}\\i\ne j}}} f_i f_j g(i) g(j) Y_i B_j\Bigr) \\}
\onslide<2->{&\kern1.5cm -\Bigl(\,
\sum_{\mathclap{j\in[n]\textminus\{a\}}} f_j \E[g(a)g(j)Y_j]\Bigr)^2 \\[\jot]}
\onslide<3->{&=
\sum_{\mathclap{j\in[n]\setminus\{a\}}} f^2_j/k + 0 - 0 \,.\\[\jot]}
\end{align*}
\end{frame}
\end{document}