表格中的小页面有奇怪的行间距

表格中的小页面有奇怪的行间距

我有一个pandoc生成的乳胶表(来自 markdown),如下所示:

在此处输入图片描述

我不明白如何正确地设置行间距,比如说使用12pt\tabularnewline[12pt]没有效果? 为什么不起作用? 如何正确地设置内容行间距(而不是标题行)?

\documentclass{article}

\usepackage{longtable, booktabs}

\begin{document}

\begin{longtable}[]{@{}ll@{}}
\caption{TODO Title einfügen}\tabularnewline
\toprule
\begin{minipage}[b]{0.39\columnwidth}\raggedright
as dasd asd asd \strut
\end{minipage} & \begin{minipage}[b]{0.52\columnwidth}\raggedright
AA-Modell\strut
\end{minipage}\tabularnewline
\midrule
\endfirsthead
\toprule
\begin{minipage}[b]{0.39\columnwidth}\raggedright
asd asd asd asd asd \strut
\end{minipage} & \begin{minipage}[b]{0.52\columnwidth}\raggedright
AA-Modell\strut
\end{minipage}\tabularnewline
\midrule
\endhead
\begin{minipage}[t]{0.39\columnwidth}\raggedright
Was ist passiert?\strut
\end{minipage} & \begin{minipage}[t]{0.52\columnwidth}\raggedright
\begin{itemize}
\item
  ajkshd kjahsd kjhaskjhdkj haskdjhaklsjdaklsjhd klajshd lkajshd klajshd kahs dlkha sd
\end{itemize}
\end{minipage}\tabularnewline[12pt]
\begin{minipage}[t]{0.39\columnwidth}\raggedright
Wie fühle ich mich? Und du?\strut
\end{minipage} & \begin{minipage}[t]{0.52\columnwidth}\raggedright
\begin{itemize}
\item
  ajkshd lkajsd löajks döljasdökjasöldkjasöld aölsdj aölsjd ölasjd ölajs d
\end{itemize}
\end{minipage}\tabularnewline
\bottomrule
\end{longtable}

\end{document}

答案1

我不会minipage在表中使用 s,而是在第二列中使用p列和列表,而是使用包及其定制能力:itemizeenumitem

\documentclass{article}

\usepackage{array,      % new
            booktabs, longtable,
            makecell}   % new
\usepackage{enumitem}   % new
\usepackage{etoolbox}   % new
\AtBeginEnvironment{longtable}{%
\setlist[itemize]{nosep=0pt,
                 leftmargin=*,
                 label=\textbullet,
                 after=\end{minipage},                  % <---
                 before=\begin{minipage}[t]{\linewidth} % <---
                 }
                      }

\begin{document}

\begingroup
\setcellgapes{2pt}
\makegapedcells
    \begin{longtable}[]{@{} >{\raggedright}p{\dimexpr0.45\columnwidth-\tabcolsep}
                            >{\raggedright}p{\dimexpr0.55\columnwidth-\tabcolsep} @{}}
\caption{TODO Title einfügen}\tabularnewline
    \toprule
as dasd asd asd 
    &   AA-Modell       \tabularnewline
    \midrule
\endfirsthead
    \toprule
asd asd asd asd asd 
    &   AA-Modell       \tabularnewline
    \midrule
\endhead
%
Was ist passiert? 
    &   \begin{itemize}
    \item   ajkshd kjahsd kjhaskjhdkj haskdjhaklsjdaklsjhd klajshd lkajshd klajshd kahs dlkha sd
        \end{itemize}   \tabularnewline
Wie fühle ich mich? Und du?
    &   \begin{itemize}
    \item   ajkshd lkajsd löajks döljasdökjasöldkjasöld aölsdj aölsjd ölasjd ölajs d
        \end{itemize}   \tabularnewline
    \bottomrule
\end{longtable}
\endgroup

\end{document}

在此处输入图片描述

答案2

你写了,

我不明白如何正确设置行距,比如说 12pt。这\tabularnewline[12pt]没有效果吗?

假设这12pt是的替代品\baselineskip,你可以-- 但不应该 -- 用 替换\tabularnewline[12pt]\\ \\但这最终会插入太多空格。由于您使用了booktabs包,更好的解决方案是使用\addlinespace。因此我建议您替换

\tabularnewline[12pt]

\\ \addlinespace

完整的 MWE 及其输出——请注意,我已尝试清理您有些不守规矩的代码:

在此处输入图片描述

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{longtable, booktabs}
\usepackage{array} % for '\newcolumntype' macro
\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1\textwidth}}

\begin{document}

\begin{longtable}{@{} P{0.39} P{0.52} @{}}

% headers and footers:
\caption{TODO Title einfügen} \\
\toprule
as dasd asd asd & AA-Modell \\
\midrule
\endfirsthead

\toprule
asd asd asd asd asd AA-Modell \\
\midrule
\endhead

\midrule
\endfoot

\bottomrule
\endlastfoot

%% body of longtable:
Was ist passiert? & 
\begin{minipage}[t]{\hsize} \raggedright
  \begin{itemize}
  \item
    ajkshd kjahsd kjhaskjhdkj haskdjhaklsjdaklsjhd klajshd lkajshd klajshd kahs dlkha sd
  \end{itemize}
\end{minipage} 
%% \\ \\         % <-- not good
\\ \addlinespace % <-- much better 

Wie fühle ich mich? Und du? & 
\begin{minipage}[t]{\hsize} \raggedright
  \begin{itemize}
  \item
    ajkshd lkajsd löajks döljasdökjasöldkjasöld aölsdj aölsjd ölasjd ölajs d \strut
  \end{itemize}
\end{minipage} \\

\end{longtable}

\end{document}

相关内容