![>{\centering} 列时出现“放错 \omit”错误](https://linux22.com/image/393139/%3E%7B%5Ccentering%7D%20%E5%88%97%E6%97%B6%E5%87%BA%E7%8E%B0%E2%80%9C%E6%94%BE%E9%94%99%20%5Comit%E2%80%9D%E9%94%99%E8%AF%AF.png)
首先,我查看了misplaced \omit...
在此网站上找到的有关表格的所有其他错误问题,但没有一个与我的情况完全相关。 这是我能找到的最接近的,但它不太适合我的应用程序,解决方案涉及在我没有使用的单元格中使用\tabularnewline
vs。\\
我正在尝试制作一张看起来几乎像这样:
上述示例由以下内容生成。
\documentclass{article}
\usepackage{array}
\begin{document}
\begin{table}
\begin{tabular}{m{1in}m{1in}m{1in}}
\cline{1-1}
\multicolumn{1}{|m{1in}|}{\textbf{Caption}} & cell of muliline text to wrap & cell of muliline text to wrap \\ \cline{1-2}
\multicolumn{1}{m{1in}|}{cell of muliline text to wrap} & \multicolumn{1}{m{1in}|}{\textbf{Caption}} & cell of muliline text to wrap \\ \cline{2-3}
cell of muliline text to wrap & \multicolumn{1}{m{1in}|}{cell of muliline text to wrap} & \multicolumn{1}{m{1in}|}{\textbf{Caption}} \\ \cline{3-3}
\end{tabular}
\end{table}
\end{document}
但是,我希望列居中而不是对齐。我通常会通过将所有 替换为 来实现这一点m{1in}
。>{\centering}m{1in}
但是当我这样做时,我收到以下错误。
! misplaced \omit.\@cline #1-#2\@nil -> ...
我如何重现上述表格格式但带有居中列?
答案1
\documentclass{article}
\usepackage{array}
\begin{document}
\begin{table}
\begin{tabular}{*{3}{>{\centering\arraybackslash}m{1in}}}
\cline{1-1}
\multicolumn{1}{|m{1in}|}{\textbf{Caption}} & cell of muliline text to wrap & cell of muliline text to wrap \\ \cline{1-2}
\multicolumn{1}{m{1in}|}{cell of muliline text to wrap} & \multicolumn{1}{m{1in}|}{\textbf{Caption}} & cell of muliline text to wrap \\ \cline{2-3}
cell of muliline text to wrap & \multicolumn{1}{m{1in}|}{cell of muliline text to wrap} & \multicolumn{1}{m{1in}|}{\textbf{Caption}} \\ \cline{3-3}
\end{tabular}
\end{table}
\end{document}
在 的范围内\centering
,\\
被重新定义为强制居中换行,因此不再具有其“结束表格行”定义。您可以使用\arraybackslash
重新声明 的表格定义\\
,也可以使用\tabularnewline
代替 ,\\
后者是更长的形式,前提是 始终引用表格行的结尾。