
答案1
我假設第一行中的第二項與兩個普通列一樣寬。同樣,第二行中的第二項與兩個正常行一樣高。
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\[
\sbox0{$\begin{matrix} D & D\end{matrix}$}
\left[\begin{array}{c|c}
a & \mathmakebox[\wd0]{b'} \\
\hline
b & \vphantom{\begin{matrix} D \\ D \end{matrix}} D
\end{array}\right]
\]
\end{document}
新增於 2022 年 12 月
出現了一個更好的工具,即nicematrix
.
\documentclass{article}
\usepackage{amsmath}
\usepackage{nicematrix}
\begin{document}
\[
\begin{bNiceArray}{c|w{c}{3em}}[margin]
a & b' \\
\hline
\Block{2-1}{b} & \Block{2-1}{D} \\
&
\end{bNiceArray}
\]
\end{document}
答案2
另一個選擇是tabularray
:
\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}
\[
\begin{+bmatrix}[
vline{2} = {1}{abovepos = -1},
vline{2} = {2}{belowpos = -1},
colspec={cm{3em}},
rowspec={Q[m]|m{3em}},
]
a & b' \\
b & D
\end{+bmatrix}
\]
\end{document}
我設置abovepos
和belowpos
to-1
來縮短垂直線,因為我不喜歡它高於括號。當然,如果您喜歡,您可以刪除該設定。