%3F.png)
Oenumitem
documentação do pacotediz:
\topsep
,\itemsep
,\partopsep
,\parsep
?
Ok, não diz exatamente isso, mas também não ilustra o que essas dimensões significam. Posso obter um diagrama com o que cada um deles significa? E qual é o equivalente a \bottomsep
?
Responder1
O livro de Leslie Lamport,LaTeX: um sistema de preparação de documentos(1994) tem uma figura como a que você pediu na página 113, que explica, entre outras coisas, que o espaço vertical no final de uma lista é sempre igual ao espaço no topo. Esta última depende das circunstâncias, nomeadamente, se a lista foi ou não iniciada na modalidade vertical.
Esta é a figura correspondente em “The LaTeX Companion”
Responder2
Ok, já que você fez a pergunta com uma foto, responderei com uma (mais ou menos).
Resumo
\itemsep
= espaço vertical adicionado após cada item da lista.\parsep
= espaço vertical adicionado após cada parágrafo da lista.\topsep
= espaço vertical adicionado acima e abaixo da lista.\partopsep
= espaço vertical adicionado acima e abaixo da lista, mas somente se a lista iniciar um novo parágrafo.
Exemplo de documento
\documentclass[]{article}
\usepackage[margin=1in]{geometry}
\parindent=0pt
\usepackage{enumitem}
\usepackage{fancyvrb}
\DefineShortVerb{\|}
\newcommand{\longline}{This is a line of text that will form a paragraph which we can use in various places.\par}
\newcommand{\printvalues}{topsep=\the\topsep; itemsep=\the\itemsep; parsep=\the\parsep; partopsep=\the\partopsep}
\begin{document}
\hrulefill
\begin{enumerate}[topsep=0pt,itemsep=0pt,parsep=0pt,partopsep=0pt]
\item\printvalues
\item With all |*sep| values set to 0pt there is no space above or below the enumeration nor between the items or paragraphs within the items.
\item\longline
\end{enumerate}
\hrulefill\par
\hrulefill
\begin{enumerate}[topsep=0pt,itemsep=20pt,parsep=0pt,partopsep=0pt]
\item\printvalues
\item When we set |\itemsep| then this much space is placed between items but no space between paragraphs within an item.
\item\longline\longline
\end{enumerate}
\hrulefill\par
\hrulefill
\begin{enumerate}[topsep=0pt,itemsep=0pt,parsep=20pt,partopsep=0pt]
\item\printvalues
\item When we set |\parsep| then this much space is placed after every paragraph within an item. This will effectively also separate items too, since each single paragraph item will have the |\parsep| space after it.
\item\longline\longline
\end{enumerate}
\hrulefill\par
\hrulefill
\begin{enumerate}[topsep=20pt,itemsep=0pt,parsep=0pt,partopsep=0pt]
\item\printvalues
\item When we set |\topsep| this much space is placed above and below the enumeration.
\end{enumerate}
\hrulefill
\begin{enumerate}[topsep=0pt,itemsep=0pt,parsep=0pt,partopsep=20pt]
\item\printvalues
\item When we set |\partopsep| this much space will be placed before and after a list only if the list is preceded by a |\par| (i.e., starts a new paragraph)
\item This enumerate is not preceded by a |\par| so no space is added.
\end{enumerate}
\hrulefill\par
\hrulefill\par
\begin{enumerate}[topsep=0pt,itemsep=0pt,parsep=0pt,partopsep=20pt]
\item\printvalues
\item When we set |\partopsep| this much space will be placed before and after a list only if the list is preceded by a |\par| (i.e., starts a new paragraph)
\item This enumerate is preceded by a |\par| so space is added.
\end{enumerate}
\hrulefill
\end{document}