![表格和多页](https://linux22.com/image/234184/%E8%A1%A8%E6%A0%BC%E5%92%8C%E5%A4%9A%E9%A1%B5.png)
我正在写一本书,我有一张很大的桌子。
我想知道是否有一种方法可以跨越桌子,不是在长度上而是在宽度上。
最后,我希望能够将表格分成两部分,这样一旦打印出书,就可以沿着一行读完两页。
有没有办法或程序可以做到这一点?
谢谢 !
答案1
我认为没有自动的方法可以做到这一点,但是,如果您的表格具有固定高度的行,则可以将其拆分为两个表格,并使用该dpfloat
包将相邻页面上的两个表格配对。
例子:
\documentclass{article}
\usepackage{dpfloat, booktabs}
\begin{document}
\begin{table}[p]
\begin{leftfullpage}
\begin{tabular}{llllll}
\toprule
1 & 2 & 3 & 4 & 5 & 6 \\
\midrule
0.598064154 & 0.339685582 & 0.19396861 & 0.213309634 & 0.075210499 & 0.332646254 \\
0.078241148 & 0.792167857 & 0.219108081 & 0.201291187 & 0.431479589 & 0.667717852 \\
0.469795242 & 0.33942751 & 0.420695486 & 0.82740107 & 0.738145761 & 0.031280146 \\
0.753119695 & 0.951982884 & 0.785708805 & 0.818329289 & 0.359288584 & 0.290605686 \\
0.803870396 & 0.731847731 & 0.899035306 & 0.8203372 & 0.762518297 & 0.025427827 \\
\bottomrule
\end{tabular}
\end{leftfullpage}
\end{table}
\begin{table}[p]
\begin{fullpage}
\begin{tabular}{llllll}
\toprule
7 & 8 & 9 & 10 & 11 & 12 \\
\midrule
0.060659362 & 0.594518703 & 0.735081007 & 1.735081007 & 2.735081007 & 3.735081007 \\
0.494861845 & 0.452771499 & 0.6161709 & 1.6161709 & 2.6161709 & 3.6161709 \\
0.685467538 & 0.929017242 & 0.866804413 & 1.866804413 & 2.866804413 & 3.866804413 \\
0.557379459 & 0.670159594 & 0.252399841 & 1.252399841 & 2.252399841 & 3.252399841 \\
0.303340706 & 0.958921469 & 0.339461931 & 1.339461931 & 2.339461931 & 3.339461931 \\
\bottomrule
\end{tabular}
\end{fullpage}
\end{table}
\end{document}
该解决方案的最大缺点是,如果一个表中的列中有换行符,则需要在另一个表的相应行中手动添加支柱以使它们对齐。
它还限制您在单独的页面上拆分表格;例如,您不能只将表格拆分到两页的顶部。
答案2
只有用才有可能ConTeXt
,用LaTeX
它是一种方便的工艺......Alans 示例的上下文 mkiv 代码:
\starttext
\setuplinetable[width=.19\textwidth]
\startlinetable
\NC 1 \NC2 \NC3 \NC4 \NC5 \NC6
\NC7 \NC 8 \NC9 \NC10 \NC11 \NC12 \NR
\NC 0.598064154 \NC0.339685582 \NC0.19396861 \NC0.213309634 \NC0.075210499 \NC0.332646254
\NC 0.078241148 \NC0.792167857 \NC0.219108081 \NC0.201291187 \NC0.431479589 \NC0.667717852 \NR
\NC 0.469795242 \NC0.33942751 \NC0.420695486 \NC0.82740107 \NC0.738145761 \NC0.031280146
\NC 0.753119695 \NC0.951982884 \NC0.785708805 \NC0.818329289 \NC0.359288584 \NC0.290605686 \NR
\NC 0.803870396 \NC0.731847731 \NC0.899035306 \NC0.8203372 \NC0.762518297 \NC0.025427827
\NC 0.060659362 \NC0.594518703 \NC0.735081007 \NC1.735081007 \NC2.735081007 \NC3.735081007 \NR
\NC 0.494861845 \NC0.452771499 \NC0.6161709 \NC1.6161709 \NC2.6161709 \NC3.6161709
\NC 0.685467538 \NC0.929017242 \NC0.866804413 \NC1.866804413 \NC2.866804413 \NC3.866804413 \NR
\NC 0.557379459 \NC0.670159594 \NC0.252399841 \NC1.252399841 \NC2.252399841 \NC3.252399841
\NC 0.303340706 \NC0.958921469 \NC0.339461931 \NC1.339461931 \NC2.339461931 \NC3.339461931 \NR
\stoplinetable
\stoptext
这是第 1 页和第 2 页的输出
答案3
每个人的答案似乎都太复杂了……longtable
包裹? 它会自动分页,您只需像设置普通表格一样设置它,它就会为您处理一切。