tcolorbox 中的方程式。垂直对齐

tcolorbox 中的方程式。垂直对齐

我只是想在我的投影仪幻灯片中为方程式添加一个框架。

为此,我使用了 tcolorbox 包。

下面的 MWE 生成的框中方程式几乎与框底部对齐。我希望它们垂直居中。

但是,使用“valign=center”没有效果。

(我已经有了第二个方程中水平问题的解,只是因为 MWE 原因没有将其包括在内)

\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}

编辑:

如果我使用序言

\documentclass{beamer}
\usepackage{amsmath,amsfonts,amssymb,amsthm}
\usepackage[most]{tcolorbox}
\tcbuselibrary{theorems}
\newtcolorbox{equationframe}{
 ams nodisplayskip
}

然后我得到

缺少插入的 $。\end{frame}

这不是问题,因为我意识到使用ams align*而不是ams nodisplayskip可以实现我想要的垂直对齐,而且我的初始 MWE 编译得很好。只有一个问题我没有包含在 MWE 中:为了拟合水平过长的方程式,我使用了宏

\newcommand\fiteq[1]{%
  \sbox{\mybox}{$\displaystyle#1$}%
  \ifdim\wd\mybox>.85\textwidth\resizebox{.85\textwidth}{!}{\usebox{\mybox}}%
  \else\usebox{\mybox}\fi%
}
\newsavebox{\mybox}

进而

\begin{equationframe}
\fiteq{A=......=B}
\end{equationframe}

不幸的是,对齐命令在这个宏内不起作用\\&

我只想要一个能很好地容纳方程的框。在普通乳胶中,水平到较长的方程不会带来太大问题,但是当方程周围有一个框,并且方程穿过边界时,它看起来真的很愚蠢。

有两个选项:(1)调整框的大小或(2)调整方程的大小。

宏 \fiteq{} 执行 (2),我非常喜欢它的外观。如果有人可以调整宏以与对齐命令配合使用,那就太好了(只要不使用换行符或 & 符号,它就可以与上述解决方案配合使用)。如果这不可能,那么也欢迎采用 (1) 方向的解决方案

方框底部的方程式

答案1

加载theorems库(我使用类选项来完成most)并使用ams或任何其他数学选项。

ams使用 将上部和下部设置为数学模式\displaystyle。您不需要equation环境就是这些框。而且您不需要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}

在此处输入图片描述

更新:ams equation*ams align*

除了mathtcolorbox还提供了一些其他的数学框:ams equationams alignams 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}

在此处输入图片描述

相关内容