使用 \multicolumn 合并表格中的不同单元格

使用 \multicolumn 合并表格中的不同单元格

我在 方面遇到了麻烦\multicolumn。在第二行中,包含 的单元格9应该具有相同的大小。我该如何实现这一点?

\documentclass{article}

\begin{document}
  \begin{center}
    \begin{tabular}{|c|cccccc|}
      \hline
      \textbf{faz} & \multicolumn{6}{c|}{18}\\
      \hline
      \textbf{bar} & \multicolumn{3}{c|}{9} & \multicolumn{3}{c|}{9}\\
      \hline
      \textbf{baz} & \multicolumn{2}{c|}{6} & \multicolumn{2}{c|}{6} &  \multicolumn{2}{c|}{6}\\
      \hline
    \end{tabular}
  \end{center}

\end{document} 

在此处输入图片描述

答案1

是的,这种行为很奇怪,但有一个解释。由于您\multicolumn在列对齐规范的第二部分中使用 s 取消了 6 列定义,因此 LaTeX 不知道表格的该部分应该如何对齐。

我的建议是插入一条虚线,其中没有任何内容,横跨整个表格宽度,包括每个列条目。然后跳回(垂直)排版表格的其余部分。这将确保 LaTeX 知道有 6 列要以 6/3-3/2-2-2 的\multicolumn方式拆分。

这是经过更正的最小示例:

在此处输入图片描述

\documentclass{article}

\begin{document}
  \begin{center}
    \begin{tabular}{|c|cccccc|}
      \hline
      \multicolumn{1}{c}{} & & & & & & \\[\dimexpr-\normalbaselineskip-\arrayrulewidth]% Correct for mis-alignment
      \textbf{faz} & \multicolumn{6}{c|}{18}\\
      \hline
      \textbf{bar} & \multicolumn{3}{c|}{9} & \multicolumn{3}{c|}{9}\\
      \hline
      \textbf{baz} & \multicolumn{2}{c|}{6} & \multicolumn{2}{c|}{6} &  \multicolumn{2}{c|}{6}\\
      \hline
    \end{tabular}
  \end{center}

\end{document}

相关内容