我现在使用这个代码:
\documentclass[11pt]{article}
\usepackage{enumerate}
\begin{document}
\begin{enumerate}
\item a
\item b
\item c
\end{enumerate}
\end{document}
我想减小 a、b、c 之间的行距。有人能帮我吗?
并且我该如何在枚举之前删除空格?
答案1
最好使用最新的、功能强大的enumitem
软件包。
\documentclass[11pt]{article}
\usepackage{enumitem}
\begin{document}
Some text here.
\begin{enumerate}[topsep=0pt,itemsep=-1ex,partopsep=1ex,parsep=1ex]
\item a
\item b
\item c
\end{enumerate}
Some more text.
\end{document}
这里您可能需要根据需要调整这些参数:
\topsep
:第一项与前一段落之间的空格。\partopsep
\topsep
:当环境开始新段落时添加的额外空格。\itemsep
:连续项目之间的空格。
在上面的代码中,参数是本地设置的。如果您愿意,可以借助 将它们设置为全局的\setlist[enumerate]{topsep=0pt,itemsep=-1ex,partopsep=1ex,parsep=1ex}
。有关详细信息,请参阅enumitem
手册文本文档。
您可以使用 来抑制所有这些空格nolistsep
。
\documentclass[11pt]{article}
\usepackage{enumitem}
\begin{document}
\noindent Some text here.
\begin{enumerate}[nolistsep]
\item a
\item b
\item c
\end{enumerate}
Some more text.
\end{document}
答案2
除了使用包之外,您还可以使用内置功能并定义新环境
\newenvironment{tight_enumerate}{
\begin{enumerate}
\setlength{\itemsep}{0pt}
\setlength{\parskip}{0pt}
}{\end{enumerate}}
这样可以很好地将项目挤压在一起。如果您需要它们更紧密,可以使用负数,但请注意不要导致文本重叠。
答案3
enumitem
提供现成的选项,用于消除列表内项目和段落之间的空格(noitemsep
)或所有垂直空格(nosep
):
\documentclass[11pt]{article}
\usepackage{enumitem, kantlipsum}
\begin{document}
\paragraph{List without vertical spacing between items and paragraphs:}
\kant[2]
\begin{enumerate}[noitemsep]
\item a
\item b
\item c
\end{enumerate}
Something after the list.
\paragraph{List without vertical spacing:}
\kant[3]
\begin{enumerate}[nosep]
\item a
\item b
\item c
\end{enumerate}
Something after the list.
\end{document}
但请注意,该功能nolistsep
现已弃用,不应再使用。
答案4
使用enumitem
包代替enumerate
\usepackage[shortlabels]{enumitem}
那么它将支持与该enumerate
包相同的 suntax。
包装enumerate
中除了标签外没有提供任何额外的配置。