数组内部 \bordermatrix 的问题

数组内部 \bordermatrix 的问题

当 a\bordermatrix放在 内时array,行间距会出错(参见下面的 MWE)。是什么导致了这个问题?有解决方案吗?

\documentclass{book}

\begin{document}

A simple matrix created with \verb+\bordermatrix+; right spacing between rows:
\[
  \bordermatrix{%
    & 1 & 2 \cr
    1 & x1 & x2 \cr
    2 & x3 & x4 \cr
    3 & x5 & x6}
\]

The same matrix inside an \texttt{array}; wrong spacing between rows:
\[
\begin{array}{c}
  \bordermatrix{%
    & 1 & 2 \cr
    1 & x1 & x2 \cr
    2 & x3 & x4 \cr
    3 & x5 & x6}
\end{array}
\]

\end{document}

答案1

这是因为\bordermatrix使用\baselineskip作为间距并将array其设置为 0pt。

恢复单元格中的值\baselineskip可修复此问题:

\documentclass{book}

\begin{document}

\[
\edef\savedbaselineskip{\the\baselineskip\relax}
\begin{array}{c}
    {\baselineskip=\savedbaselineskip
    \bordermatrix{%
    & 1 & 2 \cr
    1 & x1 & x2 \cr
    2 & x3 & x4 \cr
    3 & x5 & x6}}
\end{array}
\]

\end{document}

这是在组内完成的,以保持本地定义。

答案2

\baselineskipMartin 展示了恢复 的另一种方法,即使用\parboxminipage将 嵌入\bordermatrix数组中。这也会恢复间距。

相关内容