数学:Tcolorbox 内的 align*

数学:Tcolorbox 内的 align*

framed我正在使用和- 包来构建文档中的某些元素empheq

但是,由于我想要一种统一的方式来使用一个环境,我认为使用tcolorbox是最简单的方法。我将自己的框定义为

\newtcolorbox{mybox}[1][]{before=\centering, hbox, drop fuzzy shadow, enhanced, colback=white, sharp corners, colframe=red, fonttitle=\bfseries, title=#1, center title}

但是现在,我无法在新框中的很多环境中包含显示的数学!就我而言,我通常只需使用环境即可align*,但我在互联网上或 TcolorBox 手册中都找不到任何教我如何添加支持align*(我认为我必须这样做)的东西。

有人可以帮我吗?

梅威瑟:

\documentclass{article}

\usepackage{tcolorbox, mathtools}
\tcbuselibrary{skins}

\newtcolorbox{mybox}[1][]{before=\centering, hbox, drop fuzzy shadow, enhanced, colback=white, sharp corners, colframe=red, fonttitle=\bfseries, title=#1, center title}

\begin{document}

\begin{mybox}
  \begin{align*}
    z &= r \cos \varphi + \Im r \sin \varphi = r e^{\Im \varphi}\\
    r &= |z| = \sqrt{x^2 + y^2}
  \end{align*}
\end{mybox}

\end{document}

错误:

ERROR: Missing \endgroup inserted.

--- TeX said ---
<inserted text> 
\endgroup 
l.86 \end{mybox}

答案1

\documentclass{article}

\usepackage{tcolorbox, mathtools}
\tcbuselibrary{skins}

\newtcolorbox{mybox}[1][]{before=\centering, drop fuzzy shadow, enhanced, colback=white, sharp corners, colframe=red, fonttitle=\bfseries, title=#1, center title}

\begin{document}

\begin{mybox}
  \begin{align*}
    z &= r \cos \varphi + \Im r \sin \varphi = r e^{\Im \varphi}\\
    r &= |z| = \sqrt{x^2 + y^2}
  \end{align*}
\end{mybox}

\end{document}

您需要删除“ \hboxas alignis a display structure”。

在此处输入图片描述

或者,如果你想要水平盒子,使用内联数学标记,而aligned不是align*

在此处输入图片描述

\documentclass{article}

\usepackage{tcolorbox, mathtools}
\tcbuselibrary{skins}

\newtcolorbox{mybox}[1][]{before=\centering, hbox, drop fuzzy shadow, enhanced, colback=white, sharp corners, colframe=red, fonttitle=\bfseries, title=#1, center title}

\begin{document}

\begin{mybox}
  $\begin{aligned}
    z &= r \cos \varphi + \Im r \sin \varphi = r e^{\Im \varphi}\\
    r &= |z| = \sqrt{x^2 + y^2}
  \end{aligned}$
\end{mybox}

\end{document}

相关内容