需要为所有长表提供适当的单元格填充

需要为所有长表提供适当的单元格填充

我想为我的 longtables 添加 cellpadding。这可以通过以下方式实现:

\renewcommand{\arraystretch}{2}
\begin{longtable}[H]{|m{0.1\linewidth}m{0.9\linewidth}|}\hline
  Content
\end{longtable}
\renewcommand{\arraystretch}{1}

我前段时间才意识到这一点。现在我有很多长桌,周围都没有

\renewcommand{\arraystretch}{2}
\renewcommand{\arraystretch}{1}

\renewcommand{\arraystretch}{2}我原本以为在文档开头执行一次就足够了。但事实并非如此。它会在整个文档中重置。

如何以最简单的方式包围所有现有的长表?这里有一些 Bash 魔法吗?

答案1

更改 \arraystretch 的值通常不是一个好的解决方案,因为单元格的内容不再垂直居中。

也就是说,您可以在序言中添加以下几行:

\usepackage{etoolbox} 
\AtBeginEnvironment{longtable}{\renewcommand\arraystretch{2}}

另一个解决方案:

添加:

\usepackage{etoolbox, makecell} 
\setcellgapes{5pt} % vertical padding added at the top and bottom of cells
\AtBeginEnvironment{longtable}{\makegapedcells}

相关内容