选项 shorten(来自 nicematrix)似乎不适用于 OverBrace 命令

选项 shorten(来自 nicematrix)似乎不适用于 OverBrace 命令

我正在尝试使用带有 的选项shorten\OverBrace来自\UnderBrace的命令nicematrix。然而,在我看来,它只适用于\UnderBrace

在此处输入图片描述

我的MWE

\documentclass{book}

\usepackage[x11names]{xcolor}

\usepackage{nicematrix}
\usepackage{tikz}

\ExplSyntaxOn
\NewDocumentCommand{\highlightNodes}{ O { } }
{
    \foreach \i in {1,...,\arabic{iRow}}
    \foreach \j in {1,...,\arabic{jCol}}
    {
        \tikz [remember~picture, overlay] 
        \node [opacity=0.21] at (\i.5-|\j.5) {\color{gray} \i , \j} ;
    }
}
\ExplSyntaxOff

\begin{document}

\begin{equation*}
    \begin{bNiceArray}{ccc|c}[margin, create-extra-nodes]
        \Block[fill=Coral3]{3-3}<\large>{Z} &               &   &   0   \\
        & \hspace*{1cm} &   & \Vdots \\
        &               &   &   0    \\ \hline
        0            &    \Cdots     & 0 &   0
        \CodeAfter
        \highlightNodes
        \OverBrace[shorten]{1-1}{1-3}{C_{1}}
        \UnderBrace[shorten]{4-1}{4-3}{C_{3}}
    \end{bNiceArray}
\end{equation*}

\end{document}

答案1

命令的第一个和第二个参数\OverBrace对应于一行三列的子矩阵:单元格 (1-1)、(1-2) 和 (1-3)。两侧的单元格中没有内容,当密钥shorten生效时,它会尝试根据两侧单元格中的内容进行缩短。由于没有内容,因此\OverBrace不会缩短。

也许我会根据你的手机内容修改行为以缩短(1-2)

但是,对于您来说,存在这样一种可能性:\OverBrace{1-1}{4-3}将根据第 4 行单元格的内容缩短。

\documentclass{book}
\usepackage[x11names]{xcolor}
\usepackage{nicematrix}
\usepackage{tikz}

\ExplSyntaxOn
\NewDocumentCommand{\highlightNodes}{ O { } }
{
    \foreach \i in {1,...,\arabic{iRow}}
    \foreach \j in {1,...,\arabic{jCol}}
    {
        \tikz [remember~picture, overlay] 
        \node [opacity=0.21] at (\i.5-|\j.5) {\color{gray} \i , \j} ;
    }
}
\ExplSyntaxOff

\begin{document}

\begin{equation*}
    \begin{bNiceArray}{ccc|c}[margin, create-extra-nodes]
        \Block[fill=Coral3]{3-3}<\large>{Z} & &   &   0   \\
          & \hspace*{1cm} &   & \Vdots \\
          &               &   &   0    \\ \hline
        0 &    \Cdots     & 0 &   0
        \CodeAfter
        \highlightNodes
        \OverBrace[shorten,yshift=1mm]{1-1}{4-3}{C_{1}}
        \UnderBrace[shorten]{4-1}{4-3}{C_{3}}
    \end{bNiceArray}
\end{equation*}

\end{document}

与往常一样nicematrix,您需要进行多次编译。

上述代码的输出

相关内容