我有一个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
列和列表,而是使用包及其定制能力:itemize
enumitem
\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}