
Ich versuche lediglich, Gleichungen in meinen Beamer-Folien mit einem Rahmen zu versehen.
Zu diesem Zweck verwende ich das Paket tcolorbox.
Das folgende MWE erzeugt Kästen, bei denen die Gleichungen fast an der Basis des Kastens ausgerichtet sind. Ich hätte sie gerne vertikal zentriert.
Die Verwendung von „valign=center“ hat jedoch keine Wirkung.
(Ich habe bereits eine Lösung für das horizontale Problem in der zweiten Gleichung und habe sie aus MWE-Gründen einfach nicht einbezogen)
\documentclass{beamer}
\usepackage{tcolorbox}
\newtcolorbox{equationframe}{
valign=center,
}
\begin{document}
\begin{frame}
\begin{itemize}
\item[]
\begin{equationframe}
\begin{equation*}
p(x,y)=\begin{cases}
\min\{q(x,y),\frac{\pi({y})q(y,{x})}{\pi(x)}\}, \quad x\neq y\\
1-\int_{x\neq y} p(x,y)
\end{cases}
\end{equation*}
\end{equationframe}
\begin{equationframe}
\begin{equation*}
\pi(x)p(x,y)=\min\{\pi(x)q(x,y),\pi(y)q(y,x)\}=\pi(y)p(y,x)%
\end{equation*}
\end{equationframe}
\end{itemize}
\end{frame}
\end{document}
BEARBEITEN:
Wenn ich die Präambel verwende
\documentclass{beamer}
\usepackage{amsmath,amsfonts,amssymb,amsthm}
\usepackage[most]{tcolorbox}
\tcbuselibrary{theorems}
\newtcolorbox{equationframe}{
ams nodisplayskip
}
dann bekomme ich
Fehlendes $ eingefügt. \end{frame}
Dies ist nicht problematisch, da ich festgestellt habe, dass die Verwendung ams align*
von anstelle von ams nodisplayskip
die vertikale Ausrichtung wie gewünscht bewirkt und mein anfängliches MWE gut kompiliert. Es gibt nur ein Problem mit etwas, das ich nicht in das MWE aufgenommen habe: Um horizontal zu lange Gleichungen anzupassen, habe ich das Makro
\newcommand\fiteq[1]{%
\sbox{\mybox}{$\displaystyle#1$}%
\ifdim\wd\mybox>.85\textwidth\resizebox{.85\textwidth}{!}{\usebox{\mybox}}%
\else\usebox{\mybox}\fi%
}
\newsavebox{\mybox}
und dann
\begin{equationframe}
\fiteq{A=......=B}
\end{equationframe}
\\
Leider funktionieren die Ausrichtungsbefehle &
innerhalb dieses Makros nicht.
Ich möchte nur eine Box, die Gleichungen schön enthält. In normalem Latex ist eine horizontal zu lange Gleichung nicht so problematisch, aber wenn sich eine Box um Gleichungen befindet und die Gleichung über die Begrenzung hinausgeht, sieht das wirklich blöd aus.
Es gibt zwei Möglichkeiten: (1) Die Größe des Felds anpassen oder (2) Die Größe der Gleichung anpassen.
Das Makro \fiteq{} erfüllt (2) und mir gefällt das Aussehen sehr gut. Es wäre schön, wenn jemand das Makro so anpassen könnte, dass es mit Align-Befehlen funktioniert (es funktioniert mit der obigen Lösung, solange keine Zeilenumbrüche oder Et-Zeichen verwendet werden). Wenn das nicht möglich ist, wäre auch eine Lösung in Richtung (1) willkommen.
Antwort1
Laden Sie theorems
die Bibliothek (ich mache das mit der Klassenoption most
) und verwenden Sie ams
eine der anderen Mathematikoptionen.
ams
Stellen Sie die oberen und unteren Teile mit auf den mathematischen Modus \displaystyle
. Sie brauchen keine equation
Umgebungen in diesen Feldern. Und Sie brauchen nicht valign
.
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\newtcolorbox{equationframe}{
math
}
\begin{document}
\begin{frame}
\begin{itemize}
\item[]
\begin{equationframe}
p(x,y)=\begin{cases}
\min\{q(x,y),\frac{\pi({y})q(y,{x})}{\pi(x)}\}, \quad x\neq y\\
1-\int_{x\neq y} p(x,y)
\end{cases}
\end{equationframe}
\begin{equationframe}
\pi(x)p(x,y)=\min\{\pi(x)q(x,y),\pi(y)q(y,x)\}=\pi(y)p(y,x)%
\end{equationframe}
\end{itemize}
\end{frame}
\end{document}
Aktualisieren: ams equation*
, ams align*
:
Statt math
bietet tcolorbox
auch einige andere Mathematikfelder: ams equation
, ams align
, ams gather
, ...
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\begin{document}
\begin{frame}
\begin{tcolorbox}[ams equation*]
p(x,y)=\begin{cases}
\min\{q(x,y),\frac{\pi({y})q(y,{x})}{\pi(x)}\}, \quad x\neq y\\
1-\int_{x\neq y} p(x,y)
\end{cases}
\end{tcolorbox}
\begin{tcolorbox}[ams nodisplayskip, ams align*]
\pi(x)p(x,y) & =\min\{\pi(x)q(x,y),\pi(y)q(y,x)\}\\
& =\pi(y)p(y,x)%
\end{tcolorbox}
\end{frame}
\end{document}