带行距的表格

带行距的表格

莫因,

我希望行距行为是默认行为。因此:

\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 中。

相关内容