Tcolorbox 内部对齐环境

Tcolorbox 内部对齐环境

我想知道是否可以对齐彩色等号。我在对齐环境之间使用了 tcolorboxes。我对此表示怀疑,但是,有没有办法在对齐环境中使用 tcolorboxes?是否可以告诉第二个对齐环境恢复前一个对齐环境?

\documentclass{article}
\usepackage{amsmath}
\usepackage{tcolorbox}

\newtcolorbox{AuxCalc}{
notitle,
colframe=black!75!white,
colback=black!20!white
}

\newtcolorbox{AuxCalc2}{
notitle,
colframe=black!75!white,
colback=black!10!white
}

\begin{document}

\begin{align*}
    1 &= 2 \\
    1 &= 2 \\
\end{align*}

\begin{AuxCalc}

    \begin{align*}
        14312 &= 2 \\
        1 &= 12342 \\
    \end{align*}
        
    \begin{AuxCalc2}
        \begin{align*}
            1 &= 2 \\
            1 &= 2 \\       
        \end{align*}
    \end{AuxCalc2}
    
    \begin{align*}
        11235132 &= 2 \\
        123513251 &= 2 \\
    \end{align*}
    
\end{AuxCalc}


\begin{align*}
    12341 &= 2 \\
    112512351 &= 2 \\
\end{align*}

\end{document}

例子

答案1

这不是一种特别有吸引力的方法,但它相当于研究您想要对齐的区域,以寻找最宽的左侧组件和最宽的右侧组件。您可以使用\savewidel和保存这些组件\savewider。然后,对于align您希望符合整体对齐的每种类型环境,如果它尚未拥有最宽的左/右元素,则可以将环境左侧和/或右侧的一个参数调用到 和 中\setwidel\setwider这基本上将参数放在一个“宽”或“更宽”宽度的框中,并具有适当的右对齐或左对齐。

\documentclass{article}
\usepackage{amsmath}
\usepackage{tcolorbox}

\newtcolorbox{AuxCalc}{
notitle,
colframe=black!75!white,
colback=black!20!white
}

\newtcolorbox{AuxCalc2}{
notitle,
colframe=black!75!white,
colback=black!10!white
}

\begin{document}

\newsavebox\widemathl
\newsavebox\widemathr
\newcommand\savewidel[1]{\savebox\widemathl{$\displaystyle#1$}}
\newcommand\savewider[1]{\savebox\widemathr{$\displaystyle#1$}}
\newcommand\setwidel[1]{\makebox[\wd\widemathl][r]{$#1$}}
\newcommand\setwider[1]{\makebox[\wd\widemathr][l]{$#1$}}

\savewidel{123513251}
\savewider{12342}

\begin{align*}
    \setwidel{1} &= \setwider{2} \\
    1 &= 2 \\
\end{align*}

\begin{AuxCalc}

    \begin{align*}
        \setwidel{14312} &= 2 \\
        1 &= 12342 \\% <-- HERE IS WIDEMATHR
    \end{align*}
        
    \begin{AuxCalc2}
        \begin{align*}
            \setwidel{1} &= \setwider{2} \\
            1 &= 2 \\       
        \end{align*}
    \end{AuxCalc2}
    
    \begin{align*}
        11235132 &= \setwider{2} \\
        123513251 &= 2 \\% <-- HERE IS WIDEMATHL
    \end{align*}
    
\end{AuxCalc}


\begin{align*}
    12341 &= \setwider{2} \\
    112512351 &= 2 \\% <-- HERE IS ALSO WIDEMATHL
\end{align*}

\end{document}

在此处输入图片描述

相关内容