消除图表中的空白

消除图表中的空白

我想消除我的不同章节的图形之间的间隙table of figures。我这里有一个截图:

在此处输入图片描述

是否有某种命令可以禁用间隙?我不确定我可以给出哪种 MWE,因为它是大型文档中的图表。

答案1

这是一个解决方案book.cls

间隙由\chapter命令(实际上是 \@chapter`)引入,使用

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

每次设置新章节时,即设置相关.lof.lot文件的垂直空间(间隙!)。

可以通过 来解决这个问题\xpatchcmd{},将 中的命令替换\@chapter为“无”。

\documentclass{book}


\usepackage{xpatch}

\makeatletter
\xpatchcmd{\@chapter}{%
  \addtocontents{lof}{\protect\addvspace{10\p@}}%
  \addtocontents{lot}{\protect\addvspace{10\p@}}%
}{}{}{}
\makeatother


\begin{document}

\listoffigures

\chapter{First}
\begin{figure}
\caption{Dummy figure}
\end{figure}

\begin{figure}
\caption{Dummy figure}
\end{figure}

\chapter{Second}
\begin{figure}
\caption{Dummy figure}
\end{figure}


\end{document}

在此处输入图片描述

答案2

如果您正在使用 KOMA-Script 类(scrbooksrcreprt),您可以使用该选项listof=nochaptergap来禁用间隙:

\documentclass[listof=nochaptergap]{scrbook}
\usepackage[ngerman]{babel}
\begin{document}

\listoffigures
\chapter{First}
\captionof{figure}{Eine Abbildung}
\captionof{figure}{Eine zweite Abbildung}

\chapter{Second}
\captionof{figure}{Eine Abbildung im zweiten Kapitel}
\end{document}

在此处输入图片描述

相关内容