穿过表格单元格的水平线

穿过表格单元格的水平线

我有一张又长又薄的桌子,我把它折叠起来,做成更宽、更短的版本。这张表有几条水平线来分隔数据类别。例如,原始表格如下:

-----------------------
| Column A | Column B |
-----------------------
| Data A1  | Data B1  |
| Data A2  | Data B2  |
| ------------------- |
| Data A3  | Data B3  |
...

我想要的是:

---------------------------------------------------
| Column A | Column B |     | Column A | Column B |
---------------------------------------------------
| Data A1  | Data B1  |     | Data A51 | Data B51 |
| Data A2  | Data B2  |     | Data A52 | Data B52 |
| ------------------- |     | Data A53 | Data B53 |
| Data A3  | Data B3  |     | Data A54 | Data B54 |
...

问题是我无法通过水平规则获得所需的行为。如果我使用类似的东西\cmidrule{1-2},右边两列就会有一个空白行:

---------------------------------------------------
| Column A | Column B |     | Column A | Column B |
---------------------------------------------------
| Data A1  | Data B1  |     | Data A51 | Data B51 |
| Data A2  | Data B2  |     | Data A52 | Data B52 |
| -------------------                             |
| Data A3  | Data B3  |     | Data A53 | Data B53 |
...

我尝试过,\vspace{-3mm}但找不到能得到正确结果的值和位置。我还考虑过不使用,\cmidrule并用水平线填充左侧两个单元格。类似

\multicolumn{2}{c}{--------} & Data A53 & Data B53 \\

但是,我不知道如何画出这条水平线。

答案1

您可以使用\hrulefill代替您的----(但与 相比,垂直间距可能相当奇怪\cmidrule),或者您可以使用\cline{1-2}这将在其他列中打开一个间隙。或者(也许最简单的)您可以并排使用两个单独的表格环境。

如果你想控制规则的垂直位置,你可以使用\leaders例如

\leaders\hbox{\rule[0.4em]{.1pt}{0.4pt}}\hfill\mbox{}

需要\mbox{}保护\unskip表格代码所添加的领导者,以从条目末尾删除空白。

相关内容