水平生长的桌子

水平生长的桌子

我有一个两列表格,它在页面上显得比较“单薄”,并且留有大量空白。我希望通过限制其生成的最大行数来使其横向增长。

假设我有一张 12x2 的表格。我想降低这张表格的高度,并将最大行数限制为 6。这样应该会生成一个 6x4 的表格,其中第 1 列和第 2 列用于原始表格中的前六个条目,第 3 列和第 4 列用于第 7-12 个条目。第 1 列和第 3 列中的“数据类型”相同。第 2 列和第 4 列也是如此。

例如:

Num1 & 1\\
Num2 & 2\\
Num3 & 3\\
Num4 & 4\\
Num5 & 5\\
Num6 & 6\\
Num7 & 7\\
Num8 & 8\\
Num9 & 9\\
Num10 & 10\\
Num11 & 11\\
Num12 & 12\\

变成(就降价而言):

Num1 | 1 || Num7  | 7
Num2 | 2 || Num8  | 8
Num3 | 3 || Num9  | 9
Num4 | 4 || Num10 | 10
Num5 | 5 || Num11 | 11
Num6 | 6 || Num12 | 12

怎么做呢?我还没有找到任何可以立即实现此功能的表环境。因此,我们需要一个 \newenvironment 或类似的东西。

扩展 - 如果我想将行数限制为 4,该怎么办?那么我应该有一个 4x6 的表格,其中包含三组列,而不是上面的 2 组。

答案1

根据您允许自己进行多少手动干预,这可能就足够了:只需\breaktable在您想要分栏的位置插入新定义的内容。

\documentclass{article}
\def\breaktable{\end{tabular} \begin{tabular}{|c|c|}}
\begin{document}
\centering
\begin{tabular}{|c|c|}
Num1 & 1\\
Num2 & 2\\
Num3 & 3\\
Num4 & 4\\
Num5 & 5\\
Num6 & 6\\
\breaktable
Num7 & 7\\
Num8 & 8\\
Num9 & 9\\
Num10 & 10\\
Num11 & 11\\
Num12 & 12\\
\end{tabular}

\bigskip
\begin{tabular}{|c|c|}
Num1 & 1\\
Num2 & 2\\
Num3 & 3\\
Num4 & 4\\
\breaktable
Num5 & 5\\
Num6 & 6\\
Num7 & 7\\
Num8 & 8\\
\breaktable
Num9 & 9\\
Num10 & 10\\
Num11 & 11\\
Num12 & 12\\
\end{tabular}
\end{document}

在此处输入图片描述

相关内容