我有一张大桌子,其要求如下:
- 跨越多个页面(当前正在使用
longtable
) - 最后一列的文本必须换行(使用 的
tabu
环境longtabu
,因为tabularx
不支持多页)
arydshln
我正在尝试添加像这样的虚线水平线\hdashline
。arydshln
文档表示在使用 加载时必须小心longtable
,但即使在表包之后加载,它仍然无法编译。这个问题表示该arydshln
包显然与有冲突tabu
,但并不能解决问题,因为它们的表只有一页,因此可以切换到tabularx
。
如何在多页表格中创建带有一列文本换行的虚线?
这里有较小的 MWE,概括段落比实际的要长一点,但可以表达要点:
\documentclass{article}
\usepackage[layout=letterpaper,margin=1in]{geometry}
\usepackage{lipsum}
\usepackage{blindtext}
\usepackage{longtable}
\usepackage{tabu}
%\usepackage{arydshln}
\begin{document}
\begin{longtabu} to \linewidth {c c l X}
\rowfont\bfseries Prefix & Address & Data Field & Description \\ \hline
\endhead
\tt 1000 & \tt 0000 & 32-bit Data & \small\lipsum[1] \\
\tt 1000 & \tt 0001 & 32-bit Data & ... \\
\tt 1000 & \tt 0010 & 32-bit Data & ... \\
\tt 1000 & \tt 0011 & 32-bit Data & ... \\
\tt 1000 & \tt 0100 & 32-bit Data & ... \\
\tt 1000 & \tt 0101 & 32-bit Data & ... \\
\tt 1000 & \tt 1XX0 & 32-bit Data & \small\lipsum[1] \\
\hline % <--- Would like this to be dashed
\tt 1010 & \tt 1000 & 32-bit DMA Data & \small\lipsum[1] \\
\tt 1010 & \tt 1010 & 32-bit Data & ... \\
\tt 1010 & \tt 1011 & 32-bit Data & ... \\
\tt 1010 & \tt 1100 & DMA Control Message$\dagger$ & \small\lipsum[1] \\
\tt 1010 & \tt 1100 & 32-bit Data & ... \\
\hline % <--- Would like this to be dashed
\tt 1011 & \tt 0010 & 32-bit Data & ... \\
\end{longtabu}
\end{document}
答案1
您可以使用\tabucline[<options>]
:
\documentclass{article}
\usepackage[layout=letterpaper,margin=1in]{geometry}
\usepackage{lipsum}
\usepackage{blindtext}
\usepackage{longtable}
\usepackage{tabu}
\begin{document}
\begin{longtabu} to \linewidth {c c l X}
\rowfont\bfseries Prefix & Address & Data Field & Description \\ \hline
\endhead
\tt 1000 & \tt 0000 & 32-bit Data & \small\lipsum[1] \\
\tt 1000 & \tt 0001 & 32-bit Data & ... \\
\tt 1000 & \tt 0010 & 32-bit Data & ... \\
\tt 1000 & \tt 0011 & 32-bit Data & ... \\
\tt 1000 & \tt 0100 & 32-bit Data & ... \\
\tt 1000 & \tt 0101 & 32-bit Data & ... \\
\tt 1000 & \tt 1XX0 & 32-bit Data & \small\lipsum[1] \\
\tabucline[1pt on 3pt]
\tt 1010 & \tt 1000 & 32-bit DMA Data & \small\lipsum[1] \\
\tt 1010 & \tt 1010 & 32-bit Data & ... \\
\tt 1010 & \tt 1011 & 32-bit Data & ... \\
\tt 1010 & \tt 1100 & DMA Control Message$\dagger$ & \small\lipsum[1] \\
\tt 1010 & \tt 1100 & 32-bit Data & ... \\
\tabucline[1pt on 3pt]
\tt 1011 & \tt 0010 & 32-bit Data & ... \\
\end{longtabu}
\end{document}