Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am using the book documentclass and have a list of figures. After much trouble I noticed that there is a blank line to separate figures that are in different chapters, but not if they are within the same chapter. Since I changed the numbering of my figures to be {1, 2, 3, etc.} instead of {2.1, 2.2, 3.1, etc.} this looks silly and I'd rather have a blank line between each figure, no matter what.

How do I do that?

Similar:

share|improve this question
add comment

3 Answers

up vote 19 down vote accepted

In the book class there's an internal macro \@chapter that's adding the space by this line:

\addtocontents{lof}{\protect\addvspace{10\p@}}%

You could redefine this macro. Alternatively, you could disable \addvspace in the list of figures, for instance by

\newcommand*{\noaddvspace}{\renewcommand*{\addvspace}[1]{}}
\addtocontents{lof}{\protect\noaddvspace}

The effect should end with the list of figures, but of course you could group it to limit the scope.

If you disabled it you could use an environment or a declaration of the setspace package, to get more space between the lines of the list of figures. Or you just use \linespread locally:

\addtocontents{lof}{\linespread{2}\selectfont}
share|improve this answer
    
The redefinition of the macro does disable \addvspace ; however, I'd rather have the space between each figure. Do you think it's possible? –  Damien Aug 2 '10 at 19:31
1  
Hi Damien, I've added linespread. That would increase the line spacing equally. Otherwise one could redefine \caption or \caption to add the desired space. –  Stefan Kottwitz Aug 3 '10 at 12:06
    
that's all I needed, thx again! –  Damien Aug 3 '10 at 19:33
add comment

Using the etoolbox package, you can patch this out of the code.

\makeatletter
\patchcmd{\@chapter}{%
        \addtocontents{lof}{\protect\addvspace{10\p@}}%
        \addtocontents{lot}{\protect\addvspace{10\p@}}%
}{}{}{\message{Failed to patch \string\@chapter}}
\makeatother

For adding space between figures and tables, you can use the tocloft package.

\setlength\cftbeforefigskip{\cftbeforechapskip}
\setlength\cftbeforetabskip{\cftbeforechapskip}

This puts the same space between entries in the list of figures/tables as goes between chapters in the table of contents.

share|improve this answer
add comment

If you happen to use a KOMA-Script class, simply add the listof=nochaptergap class option. (By default, KOMA-Script uses listof=chaptergapsmall which will produce an additional vertical space of 10 pt, equal to the behaviour of the standard classes.)

\listoffigures

\chapter{foo}

\begin{figure}
\centering
\rule{1cm}{1cm}
\caption{A figure}
\end{figure}

\chapter{bar}

\begin{figure}
\centering
\rule{1cm}{1cm}
\caption{Another figure}
\end{figure}

\begin{figure}
\centering
\rule{1cm}{1cm}
\caption{And another one}
\end{figure}

\end{document}

enter image description here

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.