我有一个项目列表,我想从新行开始,但第一个项目之前没有完整的段落空间。我尝试使用 enumitem 中的不同选项来控制这一点,它们按我预期的方式工作。然而,当我使用 parskip 包时,行为发生了巨大变化。
例如,以下内容具有所需的间距:
\documentclass[12pt, a4paper, pdftext, draft]{article}
\usepackage[a4paper,margin=1in]{geometry}
\usepackage[compact]{titlesec}
%
\usepackage{enumitem}
%
\begin{document}
Bunch of text here.
New paragraph here\newline
New line here.
\begin{itemize}[partopsep=0pt, topsep=0pt, parsep=0pt, itemsep=0pt, leftmargin=*]
\item First item
\item second one
\item etc.
\end{itemize}
More here.
\end{document}
但是当我引入 parskip 时,它会在列表前添加一堆额外的空间:
\documentclass[12pt, a4paper, pdftext, draft]{article}
\usepackage[a4paper,margin=1in]{geometry}
\usepackage[compact]{titlesec}
%
\usepackage[parfill]{parskip}
\parfillskip = 2em plus 1fil %Override parfill default (\parfillskip = 30pt plus 1fil)
%
\usepackage{enumitem}
%
\begin{document}
Bunch of text here.
New paragraph here\newline
New line here.
\begin{itemize}[partopsep=0pt, topsep=0pt, parsep=0pt, itemsep=0pt, leftmargin=*]
\item First item
\item second one
\item etc.
\end{itemize}
More here.
\end{document}
有没有办法获得我想要的列表间距和从 parskip 获得的段落格式?
答案1
如果想要糟糕的排版,就设置topsep=-\parskip
;如果想要不那么糟糕的排版,就不要使用parskip
。
\documentclass[12pt, a4paper]{article}
\usepackage[a4paper,margin=1in]{geometry}
\usepackage[compact]{titlesec}
\usepackage[parfill]{parskip}
\usepackage{enumitem}
\begin{document}
Bunch of text here.
New paragraph here\newline
New line here.
\begin{itemize}[partopsep=0pt, topsep=-\parskip, parsep=0pt, itemsep=0pt, leftmargin=*]
\item First item
\item second one
\item etc.
\end{itemize}
More here.
\end{document}