在这个问题我问过关于非标准的上括号和下括号嵌套的问题。现在我有机会在数组中对 \left{ 和 \right} 做同样的事情,因此
\begin{array}{l}
A \\ B \\ C \\ D \\ E
\end{array}
该数组右侧的右括号包含 A、B 和 C,其左侧的左括号包含 C、D 和 E,因此括号重叠。
怎样才能做到这一点?
答案1
这里我将左括号设置在左列,将“数据”设置在中间列,将右括号设置在右列。s\mathstrut
代替内容,但\vphantom
如果内容不是规则间距的,则可以考虑使用:
\documentclass{article}
\begin{document}
\[
\setlength{\arraycolsep}{0pt}
\begin{array}{ *{3}{c} }
\begin{array}{ c }
\mathstrut \\ \mathstrut \\
\left\{\begin{array}{ c } \mathstrut \\ \mathstrut \\ \mathstrut \end{array}\right.
\end{array} &
\begin{array}{ c}
One \\ Two \\ Three \\ Four \\ Five
\end{array}
\begin{array}{ c }
\left.\begin{array}{c}
\mathstrut \\ \mathstrut \\ \mathstrut
\end{array}\right\} \\
\mathstrut \\ \mathstrut
\end{array}
\end{array}
\]
\end{document}
答案2
一个解决方案是使用pstricks
,另一个解决方案是使用dcases
和drcases
来自mathtools
:
\documentclass{article}
\usepackage{mathtools} %
\usepackage{pstricks-add, auto-pst-pdf}%
\psset{linejoin=1, braceWidth=1pt, braceWidthInner=2pt, braceWidthOuter=2.5pt}
\begin{document}
\[ \begin{pspicture} \begin{matrix}
A \pnode[1pt, 1.8ex]{A}\\ %
B\\ %
\pnode[-1pt, 1.8ex]{C1} C \pnode[1pt, -0.2ex]{C}\\%
D\\ %
\pnode[-1pt, -0.3ex]{E} E \\ %
\end{matrix}
\psbrace(C)(A){}
\psbrace(C1)(E){}
\end{pspicture}
\]
\vspace{-4ex}
\begin{align*}
& \begin{drcases}
A\\ %
B\\ %
C\\%
\end{drcases}\\[-1.06\baselineskip]
& \hspace{-0.76em}\begin{dcases}
\phantom{C}\\%
D \\%
E \\%
\end{dcases}
\end{align*}
\end{document}