amscd 包中的 CD 环境的标准对齐空间

amscd 包中的 CD 环境的标准对齐空间

我有以下代码:

\begin{align}
foo &=\mydiagram{\text{width width}}       & bar &= \mydiagram{\text{width width width}}
\\[\jot]
foo &=\mydiagram{\text{width width width}} & bar &= \mydiagram{\text{width}}
\end{align}

其中是由包中的环境\mydiagram{}组成的图,其定义如下:CDamscd

\def\mydiagram#1{%
    \begin{CD}
        S^{{\mathcal{W}}_\Lambda}\otimes T
        @>j>>
        T\\
        @V{#1}VV
        @VV{\End P}V\\
        (S\otimes T)/I
        @=
        (Z\otimes T)/J
    \end{CD}%
}

它遵循我的输出:

在此处输入图片描述

我使用align环境,因为它可以自行计算列之间的正确间距,但在这种情况下却不行。如何修复间距以实现标准align环境行为?

平均能量损失

\documentclass[a4paper,11pt]{article}

\usepackage{amsmath}
\usepackage{amscd}

\DeclareMathOperator{\End}{End}

\def\mydiagram#1{%
    \begin{CD}
        S^{{\mathcal{W}}_\Lambda}\otimes T
        @>j>>
        T\\
        @V{#1}VV
        @VV{\End P}V\\
        (S\otimes T)/I
        @=
        (Z\otimes T)/J
    \end{CD}%
}

\begin{document}

\begin{align*}
foo &=\mydiagram{\text{width width}}       & bar &= \mydiagram{\text{width width width}}
\\[\jot]
foo &=\mydiagram{\text{width width width}} & bar &= \mydiagram{\text{width}}
\end{align*}

\end{document}

答案1

\fbox在环境周围放置标签CD会显示标签超出边界框。因此,请在\diagram宏中添加空间以容纳标签

示例输出

\documentclass[a4paper,11pt]{article}

\usepackage{amsmath}
\usepackage{amscd}
\usepackage{geometry}

\DeclareMathOperator{\End}{End}

\def\mydiagram#1{%
\hphantom{\scriptstyle #1}\mkern-28mu\begin{CD}
  S^{{\mathcal{W}}_\Lambda}\otimes T
  @>j>>
  T\\
  @V{#1}VV
  @VV{\End P}V\\
  (S\otimes T)/I
  @=
  (Z\otimes T)/J
\end{CD}%
}

\begin{document}

\begin{align*}
foo &=\mydiagram{\text{width width}}       & bar &= \mydiagram{\text{width width width}}
\\[\jot]
foo &=\mydiagram{\text{width width width}} & bar &= \mydiagram{\text{width}}
\end{align*}

\end{document}

当然,结果对于页面来说太宽了,所以你不应该在一行上放太多这样的内容。

相关内容