莫因,
我希望行距行为是默认行为。因此:
\usepackage{longtable}
% ... MAGIC ... %
\begin{longtable}{ccc}
entry1 & entry2 & entry3 \tabularnewline
entry4 & entry5 & entry6 \\
entry7 & entry8 & entry9 \newline
foobar
\end{longtable}
应产生与此相同的输出:
\usepackage{longtable}
% ... MAGIC ... %
\newlength\myRowSpacing
\myRowSpacing1ex
% ... MAGIC ... %
\begin{longtable}{ccc}
entry1 & entry2 & entry3 \tabularnewline[\myRowSpacing]
entry4 & entry5 & entry6 \\[\myRowSpacing]
entry7 & entry8 & entry9 \newline
foobar
\end{longtable}
请注意它不应应用于换行符(因此多行单元格具有默认行距)。
我尝试过的:
\usepackage{longtable}
\usepackage{setspace}
\usepackage{etoolbox}
\AtBeginEnvironment{longtable}{\doublespacing}
% ... MAGIC ... %
\begin{longtable}{ccc}
entry1 & entry2 & entry3 \tabularnewline
entry4 & entry5 & entry6 \\
entry7 & entry8 & entry9 \newline
foobar
\end{longtable}
这产生了我喜欢的东西。如果我能找出一个好的因素,它可能比固定间距解决方案更好……但它也适用于换行符- 而且我还没有成功重新定义换行符(目前)。
那么,我错过了什么窍门?
问候,LDericher
答案1
longtable
服从\arraystretch
或(带array
包装),\extrarowheight
所以如果你想要一个间隔开的长表定义
\renewcommand\arraystretch{2}
\begin{longtable}{...}
答案2
\newline
必须在段落单元格中使用p
。另请参阅如何在表格单元格内添加强制换行符关于该主题
使用\doublespacing
也会影响表格中的这些段落。因此,您最好声明一个自己的命令\newcommand*\nl{\\[3ex]}
并在行末使用它。
也许你可以尝试一些其他的包,比如tabu
可以轻松允许水平的表格对齐。对于垂直的对齐也许看到我自己的问题表格:单元格垂直对齐
PS.下次考虑将所有 3 个代码示例放在一个可编译的 MWE 中。