![Verkleinern Sie Gleichungen horizontal, um sie an die umgebende Farbbox anzupassen, kompatibel mit align*-Befehlen](https://rvso.com/image/330736/Verkleinern%20Sie%20Gleichungen%20horizontal%2C%20um%20sie%20an%20die%20umgebende%20Farbbox%20anzupassen%2C%20kompatibel%20mit%20align*-Befehlen.png)
Ich möchte in meinen Beamer-Folien Gleichungen mit Rahmen versehen.
Zu diesem Zweck verwende ich das Paket tcolorbox.
Ich verwende das Makro \fiteq{}
, das ich irgendwo anders auf dieser Site gefunden habe, um zu lange Gleichungen horizontal zu verkürzen (siehe erste Gleichung unten).
Wie kann ich dieses Makro anpassen, damit es mit Ausrichtungsbefehlen wie \\
oder funktioniert &
? (Siehe zweite Gleichung unten. Wenn ich den Inhalt mit \fiteq{} umgebe, erhalte ich Fehlermeldungen.)
Am glücklichsten wäre ich mit einer Lösung, bei der die Gleichungen verkleinert werden, statt den umgebenden Kasten zu erweitern.
Außerdem: Ich möchte auch die Gleichungsumgebung anstelle von align* verwenden und dann \\
und &
in einer geteilten Umgebung verwenden können. Das Ersetzen ams align*
durch ams equation*
führt jedoch zu einer schlechten vertikalen Ausrichtung:
Der Code für das erste Bild ist unten. Für das zweite Bild habe ich in der ersten tcolorbox ams align*
durch ersetzt.ams equation*
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\newcommand\fiteq[1]{%
\sbox{\mybox}{$\displaystyle#1$}%
\ifdim\wd\mybox>.85\textwidth\resizebox{.85\textwidth}{!}{\usebox{\mybox}}%
\else\usebox{\mybox}\fi%
}
\newsavebox{\mybox}
\begin{document}
\begin{frame}
\begin{tcolorbox}[ams align*]% Replace by ams equation* to get second image
\fiteq{
A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z
}
\end{tcolorbox}
\begin{tcolorbox}[ams align*]
&A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z\\
\Leftrightarrow &A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z
\end{tcolorbox}
\end{frame}
\end{document}
Antwort1
Wenn Sie align*
zu ändern equation*
, können Sie entweder split
oder
aligned
darin einbetten und \fiteq
es geschieht das Gewünschte. Es ist auch gut, auf Null zu setzen \abovedisplayskip
, um eine große Lücke über der Formel zu vermeiden.
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\newcommand\fiteq[1]{%
\sbox{\mybox}{$\displaystyle#1$}%
\ifdim\wd\mybox>.85\textwidth\resizebox{.85\textwidth}{!}{\usebox{\mybox}}%
\else\usebox{\mybox}\fi%
}
\newsavebox{\mybox}
\begin{document}
\begin{frame}
\begin{tcolorbox}[ams align*]% Replace by ams equation* to get second image
\fiteq{
A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z
}
\end{tcolorbox}
\begin{tcolorbox}[ams equation*]
\abovedisplayskip=0pt \relax
\fiteq{\begin{split}
&A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z\\
\Leftrightarrow &A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z
\end{split}}
\end{tcolorbox}
\end{frame}
\end{document}