是否可以缩短 `tabularray 中的垂直线?我想将其用于增强矩阵,如下所示,但我发现线太长了:
\documentclass[a4paper]{article}
\usepackage{amsmath}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}
\begin{equation*}
M =
\begin{+pmatrix}[vline{Y,Y} = {1,Z}{.1pt}]
123 & 2 & 9 & 3 \\
1 & -3 & -600 & 3 \\
\end{+pmatrix}
\end{equation*}
\end{document}
答案1
您可以使用选项abovepos
和belowpos
。使用值 时-1
,“vline 被修剪rowsep
”,如手册中所述。但是,您需要为上行和下行分别定义它:
\documentclass[a4paper]{article}
\usepackage{amsmath}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}
\begin{equation*}
M =
\begin{+pmatrix}[
vline{Y} = {1}{abovepos = -1},
vline{Y} = {Z}{belowpos = -1}
]
123 & 2 & 9 & 3 \\
1 & -3 & -600 & 3 \\
\end{+pmatrix}
\end{equation*}
\end{document}
如果您想添加第三行或更多行,您还需要定义这些中间行:
\documentclass[a4paper]{article}
\usepackage{amsmath}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}
\begin{equation*}
M =
\begin{+pmatrix}[
vline{Y} = {1}{abovepos = -1},
vline{Y} = {2-Y}{},
vline{Y} = {Z}{belowpos = -1}
]
123 & 2 & 9 & 3 \\
1 & -3 & -600 & 3 \\
1 & -3 & -600 & 3 \\
1 & -3 & -600 & 3 \\
\end{+pmatrix}
\end{equation*}
\end{document}
我将线宽改为默认的 0.4 pt,因为我认为 0.1 pt 有点太细了。不过您可以随意更改vline{Y} = {1}{0.1pt, abovepos = -1}
或更改成您喜欢的任何值。
答案2
在矩阵之间有一个有趣的包,叫做spalign
。用法:\spalignaugmatn [column alignment]{augmented columns}{text}
生成一个矩阵,其中垂直分隔线位于矩阵右侧的增强列。列对齐被解释为\spalignmat
;默认值为r
。结果很好,它是nicematrix
和tabularray
。
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage{spalign}
\begin{document}
\[\spalignaugmatn[l]{1}{123 2 9 3;1 -3 -600 3}\]
\[\spalignaugmatn[c]{1}{123 2 9 3;1 -3 -600 3}\]
\[\spalignaugmatn[r]{1}{123 2 9 3;1 -3 -600 3}\]
\end{document}