使用时页边距中的节标题放在段落页边距中的标题,当段落以itemize
或开头时enumerate
,段落顶部会出现一个额外的空格,而如果以普通文本开头则不会出现这种情况。
我该如何防止这种情况发生?
示例代码:
\documentclass{report}
\usepackage[a4paper]{geometry}
\usepackage[compact]{titlesec}
\usepackage{lipsum}
\titleformat{\paragraph}[leftmargin]
{\normalfont
\bfseries\filleft}
{}{0pt}{}
\titlespacing{\paragraph}
{4pc}{1.5ex plus .1ex minus .2ex}{1pc}
\begin{document}
\section{Section}
\paragraph{first paragraph with title}
\begin{itemize}
\item item one
\item item two
\item item three
\end{itemize}
\lipsum[1]
\paragraph{second paragraph with title}
\lipsum[1]
\end{document}
答案1
您看到的空格只是列表开始前的段落第一行(空白)。要删除它,您可以使用enumitem
添加负间距。
\documentclass{report}
\usepackage[a4paper]{geometry}
\usepackage[compact]{titlesec}
\usepackage{enumitem}
\usepackage{lipsum}
\newlist{startitemize}{itemize}{1}
\newlist{startenumerate}{enumerate}{1}
\setlist[startitemize]{
label=\textbullet,
before=\leavevmode\vspace*{-\baselineskip}\vspace*{-\topsep},
}
\setlist[startenumerate]{
label=\arabic*.,
before=\leavevmode\vspace*{-\baselineskip}\vspace*{-\topsep},
}
\titleformat{\paragraph}[leftmargin]
{\normalfont
\bfseries\filleft}
{}{0pt}{}
\titlespacing{\paragraph}
{4pc}{1.5ex plus .1ex minus .2ex}{1pc}
\begin{document}
\section{Section}
\paragraph{first paragraph with title}
\begin{startitemize}
\item item one
\item item two
\item item three
\end{startitemize}
\lipsum[1]
\paragraph{second paragraph with title}
\lipsum[1]
\end{document}