使用 mdframed 和 align 定义新环境

使用 mdframed 和 align 定义新环境

我希望我的数学方程式具有灰色背景。我最初的尝试是简单地align用环境“夹住”我的环境mdframed。但如果我可以定义一个新的环境来为我处理该任务,那么对我来说似乎要容易得多,这样每次我想在文档中使用方程式时就不必输入太多代码。

我对环境的初步尝试如下:

\newenvironment{matheq}
{
\begin{mdframed}[backgroundcolor=gray]
\align
}
{
\endalign
\end{mdframed}
}

这样我就可以使用如下数学方程式:

\begin{matheq}
1+1=2
\end{matheq}

遗憾的是,这不起作用,我收到以下错误代码:

! LaTeX Error: \begin{mdframed} on input line 7 ended by \end{matheq}.

有人能帮我吗?

答案1

这不是一种mdframed方法,但是该包有特殊设置,可以为、和等环境tcolorbox创建彩色框包装器,请参阅当前手册(v. 3.72)第 293 页amsalignalign*equationgather

我已经tcolorbox为此定义了一个单独的环境\newtcolorbox并设置了ams align密钥,每次调用时都可以单独指定一些选项。有关编号框,请参阅手册(第 14 页及以下和第 97 页及以下)

\documentclass{article}



\usepackage[most]{tcolorbox}

\newtcolorbox{matheq}[1][]{ams align,colback=black!20!white,colframe=blue,#1}

\begin{document}
\begin{matheq}
\sum\limits_{n=1}^{\infty} \frac{1}{n} &= \infty.\\
\int x^2 ~\text{d}x &= \frac{1}{3} x^3 + c. \\
1 + 1 &= 2
\end{matheq}

\begin{matheq}[colback=yellow]
\sum\limits_{n=1}^{\infty} \frac{1}{n} &= \infty.\\
\int x^2 ~\text{d}x &= \frac{1}{3} x^3 + c.\\
1+1 &= 2
\end{matheq}

\end{document}

在此处输入图片描述

相关内容