我不得不用 xltabular-tables 替换一些 tabularx-tables,因为有些表格太长,无法放在一页上。
不幸的是,xltabular 在每个表格前后引入了额外的垂直空间,我不知道如何摆脱它。
以下最小示例显示了该问题。
示例(tabularx):
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\begin{document}
A tabularx:
\begin{tabularx}{\textwidth}{|X|X|}
\hline
lorem & ipsum \\
\hline
lorem & ipsum \\
\hline
\end{tabularx}
Done.
\end{document}
编译结果为:
并使用 xltabular - 注意垂直空间表格前后。(我不介意这个例子中的缩进,但它仍然值得怀疑):
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{xltabular}
\begin{document}
An xltabular:
\begin{xltabular}{\textwidth}{|X|X|}
\hline
lorem & ipsum \\
\hline
lorem & ipsum \\
\hline
\end{xltabular}
Done.
\end{document}
编译结果为:
感谢您对此提供的任何帮助。
答案1
tabularx
是内联元素,因此完全没有垂直间距。任何垂直空间都由周围段落的设置提供。您的第一个示例显示了一个具有默认零的段落\parskip
,然后是一个\textwidth
宽的表格,缩进\parindent
到右边距:
Overfull \hbox (15.0pt too wide) in paragraph at lines 14--15
第二个示例使用了,longtable
因此您可以在其前后使用\LTpre
和进行设置。\LTpost
\setlength