多行方程环境颜色从一行变为另一行?

多行方程环境颜色从一行变为另一行?

是否存在一个多线方程环境自动地显示从一行到另一行的变化?

我正在考虑一个可以接受如下输入的环境

       E[d] & = \sum_{d=0}^{\infty} \frac{\lambda^d}{d!} d e^{-\lambda}\\
            & = \sum_{d=1}^{\infty} \frac{\lambda^d}{d!} d e^{-\lambda}\\
            & = \lambda \sum_{d=1}^{\infty} \frac{\lambda^{d-1}}{d!} d e^{-\lambda}\\
            & = \lambda \sum_{d=1}^{\infty} \frac{\lambda^{d-1}}{(d-1)!} e^{-\lambda}\\
            & = \lambda \sum_{d=0}^{\infty} \frac{\lambda^{d}}{(d)!} e^{-\lambda}\\
            & = \lambda\\

并输出类似

在此处输入图片描述

理想情况下,输出中的数学运算不应该像上面的例子那样被扭曲(例如,指数中的(d-1)仍然应该具有指数大小)。

编辑 :我正在寻找一个可以产生这种输出的环境自动地,而无需手动识别更改并用特定颜色标记它们(这是我使用 colorbox 生成示例所做的)。

答案1

一种可能性是使用colorboxxcolor

\documentclass{article}
    \usepackage{mathtools}
    \usepackage[dvipsnames]{xcolor}
\newcommand{\shadow}[1]{\scriptsize\colorbox{orange!40}{$#1$}}
\newcommand{\shadowf}[1]{\footnotesize\colorbox{orange!40}{$#1$}}
\newcommand{\shadown}[1]{\colorbox{orange!40}{$#1$}}

\usepackage[active,displaymath,tightpage]{preview}
\setlength\PreviewBorder{5pt}%

    \begin{document}
\begin{align*}
       E[d] & = \sum_{d=0}^{\infty} \frac{\lambda^d}{d!} d e^{-\lambda}\\
            & = \sum_{d=\shadow{1}}^{\infty} \frac{\lambda^d}{d!} d e^{-\lambda}\\
            & = \lambda \sum_{d=1}^{\infty} \frac{\lambda^{\shadowf{d-1}}}{d!} d e^{-\lambda}\\
            & = \shadown{\lambda} \sum_{d=1}^{\infty} \frac{\lambda^{d-1}}{(\shadowf{d-1})!} e^{-\lambda}\\
            & = \lambda \sum_{\shadowf{d=0}}^{\infty} \frac{\lambda^{\shadowf{d}}}{(\shadown{d})!} e^{-\lambda}\\
            & = \lambda\\
\end{align*}
    \end{document}

在此处输入图片描述

相关内容