我刚刚发现了tabularx
允许我引入具有换行功能的表格列的包,并且我也知道允许跨页面自动拆分表格的包确实存在(例如longtable
)。
问题是我同时需要这两个功能,而嵌套两个不同包提供的两个命令不起作用(例如longtable
+ tabularx
)。
我更希望使用tabularx
+ 其他一些包(如果需要)来实现这一点。否则,任何允许我跨页面自动拆分表格并在同一张表格上进行长行换行的解决方案都是可以接受的。
答案1
您可以使用功能丰富的tabu
包中有一个longtabu
选项,它结合了tabularx
和longtable
。下面是一个 MWE:
\documentclass{article}
\usepackage{tabu}
\usepackage{longtable} %tabu needs this to be loaded.
\usepackage{lipsum} % provides dummy text.
\usepackage[charter]{mathdesign} % just for some good font...(personal taste)
\usepackage[margin=1in,showframe]{geometry}% to adjust page margins etc and to show frame.
%==================================================================
\begin{document}
% ----------------------------------------------------------------------%
\begin{longtabu} to \textwidth {|X[1 , p ] |X[1 , l ] | X[1 , c ]| X[1 , r ]|}\firsthline\hline
% -----------------These are headings----------------------------------%
Head - 1 (paragraph mode) &Head - 2 (left aligned) & Head-3 (centered) & Head -4 (right aligned) \\ \hline
%
\endfirsthead
%
\multicolumn{4}{c}%
{{\bfseries Continued from previous page}} \\
\hline
%
Head - 1 (paragraph mode) &Head - 2 (left aligned) & Head-3 (centered) & Head -4 (right aligned) \\ \hline\hline
\endhead
%
\hline \multicolumn{4}{|r|}{{Continued on next page}} \\ \hline
\endfoot
%
\hline
\multicolumn{4}{|r|}{{Concluded}} \\ \hline
\endlastfoot
%-----------Headings end---------------------------------
%--------------------------table body starts-------------------
\lipsum[4]& \lipsum[4]& \lipsum[4] & \lipsum[4] \\\hline
\lipsum[4]& \lipsum[4]& \lipsum[4] & \lipsum[4]\\hline
\lipsum[4] &\lipsum[4]& \lipsum[4] & \lipsum[4]\\\lasthline
%--------------------------table body ends-------------------
\end{longtabu}
%===============================================================
\end{document}
答案2
看看ltxtable
软件包。从软件包描述来看:
longtable
Ltxtable 在 longtable 环境中同时提供和的功能tabularx
。每个此类环境的代码(X
其列布局中包含说明符)应位于单独的文件中,然后通过命令将其包含在文档中\LTXtable{<width>}{<file name>}