我正在使用 scrbook 类,默认设置是使用 flushbottom。似乎 Latex 喜欢拉伸列表环境以填充页面。我认为段落之间的间隙比列表环境中的间隙更好。是否可以防止列表环境中的行拉伸到最大或定义不可拉伸的文本框?
梅威瑟:
\documentclass{scrbook}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\lipsum[2]
\begin{itemize}
\item First item
\item Second Item
\item Third Item
\item Fourth Item
\item Fifth Item
\end{itemize}
\lipsum[3]
\pagebreak
\end{document}
答案1
您可以使用以下方法消除项目之间的可拉伸性enumitem
:
\documentclass{scrbook}
\usepackage{enumitem}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\lipsum*[2]
\begin{itemize}[itemsep=1\itemsep,parsep=1\parsep,partopsep=1\partopsep,topsep=1\topsep]
\item First item
\item Second Item
\item Third Item
\item Fourth Item
\item Fifth Item
\end{itemize}
\lipsum[3]
\pagebreak
\end{document}
当然,在实际应用中,段落之间的拉伸不会如此剧烈。如果您希望列表前后的段落分隔符不进行拉伸,则必须将列表和以下段落放在一个组中,并\parskip
在组中将其设置为零:
\documentclass{scrbook}
\usepackage{enumitem}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\lipsum*[2]
\begingroup\parskip=0pt
\begin{itemize}[itemsep=1\itemsep,parsep=1\parsep,partopsep=1\partopsep,topsep=1\topsep]
\item First item
\item Second Item
\item Third Item
\item Fourth Item
\item Fifth Item
\end{itemize}
\lipsum[3]
\endgroup
\pagebreak
\end{document}