empheq 中适用于多行 AMS 环境的文本颜色

empheq 中适用于多行 AMS 环境的文本颜色

我使用该empheq包以及该xcolor包在彩色框中显示方程式。我还希望更改方程式的文本颜色。在单行环境中,例如equation,这可以完美地工作。然而,在多行 AMS 环境中,文本颜色仅适用于第一行,然后方程式从第二行开始使用默认颜色。

MWE 如下:

\documentclass{article}
\usepackage[svgnames, x11names]{xcolor}
\usepackage{amsmath}
\usepackage{empheq}
\newcommand{\HEG}[1]{\begin{empheq}[box = \colorbox{Thistle4}]{gather}{\color{Snow1}#1}\end{empheq}}
\begin{document}
        \HEG{\mathcal{T}\left(a_1\left\{x_{1k}\right\} + a_2\left\{x_{2k}\right\}\right) =\\\nonumber
        = a_1 \mathcal{T}\left(\left\{x_{1k}\right\}\right) + a_2 \mathcal{T}\left(\left\{x_{2k}\right\}\right)}
\end{document}

这将产生以下输出: 在此处输入图片描述

在新行的开头手动插入颜色定义是可行的,即:

\documentclass{article}
\usepackage[svgnames, x11names]{xcolor}
\usepackage{amsmath}
\usepackage{empheq}
\newcommand{\HEG}[1]{\begin{empheq}[box = \colorbox{Thistle4}]{gather}{\color{Snow1}#1}\end{empheq}}
\begin{document}
        \HEG{\mathcal{T}\left(a_1\left\{x_{1k}\right\} + a_2\left\{x_{2k}\right\}\right) =\\\nonumber
        \color{Snow1}= a_1 \mathcal{T}\left(\left\{x_{1k}\right\}\right) + a_2 \mathcal{T}\left(\left\{x_{2k}\right\}\right)}
\end{document}

将产生

在此处输入图片描述

有没有办法配置empheq让文本颜色跨多行显示,而无需手动插入颜色定义?非常感谢您的想法。

答案1

(仅适用于非编号)

只需在颜色之前使用,即可将颜色应用于整个环境\color{}。但请确保颜色更改仅适用于环境,因此拥抱带括号的所有内容,即

{\color{<color>}...}

在此处输入图片描述

无关:我不会用那些\left \right

平均能量损失

\documentclass{article}
\usepackage[svgnames,x11names]{xcolor}
\usepackage{empheq}
\newcommand{\HEG}[1]{%
  {\color{Snow1}%
    \begin{empheq}[box=\colorbox{Thistle4}]{gather}{#1}\end{empheq}%
  }%
}
\begin{document}
Text in normal color.
\HEG{
  \mathcal{T} (a_1 \{x_{1k}\} + a_2 \{x_{2k}\}) = \\ 
  a_1 \mathcal{T}(\{x_{1k}\}) + a_2 \mathcal{T}(\{x_{2k}\})
}
Text in normal color.
\end{document}

答案2

Sigur 的回答有一点变化:我定义了一个环境而不是宏(我的特质:我觉得它更容易阅读)并声明一个新的标签形式,以保证方程式编号仍然以黑色打印。

\documentclass{article}

\usepackage[svgnames, x11names]{xcolor}
\usepackage{empheq}

% provided by mathtools, which is loaded by empheq
\newtagform{black}{\textcolor{black}\bgroup(}{)\egroup}

\newenvironment{important}[1][gather] % optional parameter defaults to gather
{%
 \usetagform{black}%
 \color{Snow1}%
 \setkeys{EmphEqEnv}{#1}%
 \setkeys{EmphEqOpt}{box=\colorbox{Thistle4}}%
 \EmphEqMainEnv
}{\endEmphEqMainEnv}


\begin{document}

See
\begin{important}
\mathcal{T}(a_1\{x_{1k}\} + a_2\{x_{2k}\}) = \nonumber \\
 = a_1 \mathcal{T} (\{x_{1k}\}) + a_2 \mathcal{T}(\{x_{2k}\})
\end{important}
or similarly
\begin{important}[align]
\mathcal{T}(a_1\{x_{1k}\} + a_2\{x_{2k}\}) &= \\ \nonumber
 &= a_1 \mathcal{T} (\{x_{1k}\}) + a_2 \mathcal{T}(\{x_{2k}\})
\end{important}

\end{document}

在此处输入图片描述

相关内容