我想为我的 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}