Falta de quebra entre capítulos na lista de figuras

Falta de quebra entre capítulos na lista de figuras

Estou usando o tufte-book e incluo (nove) capítulos individuais e um Apêndice, que escrevi como um \chapter*{Appendix} (com estrela) (porque não quero que seja numerado como um capítulo).

O texto abaixo não é um MWE, mas fornece a estrutura central do meu documento:

\documentclass[twoside,symmetric]{tufte-book}
\begin{document}
.
.
.

\include{PaPCh1}  
.
.
.
\include{PaPCh9} 
\include{PaPApp}
.
.
.
\listoffigures
.
.
.

onde a fonte do Apêndice, PaPApp.tex, começa:

\chapter*{Appendix} \addcontentsline{toc}{chapter}{Appendix} 

\renewcommand{\thesection}{\Alph{section}}

\renewcommand{\thesubsection}{\thesection.\arabic{subsection}}

\renewcommand{\thefigure}{A\arabic{figure}}

A maior parte do documento composto está boa, com as Figuras devidamente numeradas 1.1, 1.2, no Capítulo 1; 2.1, 2.2, no Capítulo 2; etc., e A.1, A.2 etc., no Apêndice.

Na composição de \listoffigures há (corretamente) um espaço entre a lista de figuras em cada capítulo individual, ou seja, entre o Capítulo 1 e o Capítulo 2. O problema é que oLista de Figurasnão insere um espaço entre as figuras do último capítulo (“sem estrela”) e as figuras do Apêndice:

sem espaço entre o Capítulo 9 e o Apêndice na lista de figuras

Como posso garantir que haja um espaço entre a lista de figuras do último capítulo e a lista de figuras do Apêndice na lista de figuras?

Responder1

No início do apêndice, insira esta linha:

\addtocontents{lof}{\vspace{\baselineskip}}

(ou outra dimensão conforme desejado).

Modificações como adição de espaço entre entradas, quebras de página, alterações no comprimento da página ( \enlargethispage), podem ser inseridas com o \addtocontentscomando. O primeiro argumento especificaquallista: toc, lof, lot. O segundo argumento fornece os comandos a serem inseridos.

Se a inserção for aplicadaantesum capítulo, e os capítulos são \included, o\addtocontents deveser colocado no arquivo com o \chaptercomando, pois \includeadiará tal comando até que o arquivo incluído tenha sido totalmente processado, fazendo com que o material adicionado apareça mais tarde do que o pretendido.

A ordem é sempre importante. No presente caso, \addtocontentspode ser inserido a qualquer momento antes da primeira figura do apêndice, mas é melhor colocá-lo próximo ao início do apêndice (capítulo) para que possa ser encontrado facilmente se uma alteração for necessária posteriormente.

Responder2

O espaço vertical é adicionado automaticamente quando você chama \chapter, como pode ser visto em sua definição embook.clsereport.cls:

\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
                        \thispagestyle{plain}%
                        \global\@topnum\z@
                        \@afterindentfalse
                        \secdef\@chapter\@schapter}
    \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
                           \if@mainmatter
                             \refstepcounter{chapter}%
                             \typeout{\@chapapp\space\thechapter.}%
                             \addcontentsline{toc}{chapter}%
                                       {\protect\numberline{\thechapter}#1}%
                           \else
                             \addcontentsline{toc}{chapter}{#1}%
                           \fi
                        \else
                          \addcontentsline{toc}{chapter}{#1}%
                        \fi
                        \chaptermark{#1}%
                        \addtocontents{lof}{\protect\addvspace{10\p@}}% <-- Gap in LoF
                        \addtocontents{lot}{\protect\addvspace{10\p@}}% <-- Gap in LoT
                        \if@twocolumn
                          \@topnewpage[\@makechapterhead{#2}]%
                        \else
                          \@makechapterhead{#2}%
                          \@afterheading
                        \fi}

Portanto, devemos inserir o seguinte código no início do apêndice

\makeatletter
\addtocontents{lof}{\protect\addvspace{10\p@}}% <-- Gap in LoF
\addtocontents{lot}{\protect\addvspace{10\p@}}% <-- Gap in LoT
\makeatother

E como 10\p@é equivalente a 10pt, os códigos poderiam ser simplificados da seguinte forma:

\addtocontents{lof}{\protect\addvspace{10pt}}% <-- Gap in LoF
\addtocontents{lot}{\protect\addvspace{10pt}}% <-- Gap in LoT

Desta forma poderíamos adicionar o mesmo espaço alto que os espaços adicionados antes de começar a listar as figuras de outros capítulos na Lista de Figuras, e verificaremos atomicamente se devemos adicionar espaços no topo ou em outros lugares de uma página.

informação relacionada