答案1
我已经\addtocontents{lof}{\addvspace{...}
在每个部分之后自动添加了一个,但前提是最后一个数字计数器大于零。
另外,我添加了一个\FloatBarrier
以防止数字从一个部分泄漏到另一个部分。
\setlength{\figurelofgroupskip}{15pt}
可以使用等来控制间距量。
\documentclass{article}
\usepackage{placeins}
\newlength{\figurelofgroupskip}
\setlength{\figurelofgroupskip}{15pt}
\usepackage{chngcntr}
\counterwithin{figure}{section}
\usepackage{xpatch}
\makeatletter
\xpatchcmd{\@sect}{%
\ifnum #2>\c@secnumdepth
}{%
\FloatBarrier
\def\temp@@a{section}
\edef\temp@@b{#1}
\ifx\temp@@a\temp@@b
\ifnum\value{figure} > 0
\addtocontents{lof}{\protect\addvspace{\figurelofgroupskip}}
\fi
\fi
\ifnum #2>\c@secnumdepth
}{}{}
\makeatother
\usepackage{pgffor}
\begin{document}
\listoffigures
\section{First one}
\foreach \x in {1,...,10}{%
\begin{figure}
\caption{This is figure \x\ from section \thesection}
\end{figure}
}
\section{Second one}
\subsection{Subsection of \thesection}
\foreach \x in {1,...,10}{%
\begin{figure}
\caption{This is figure \x\ from section \thesection}
\end{figure}
}
\end{document}
答案2
如果您所说的章节实际上是指部分,那么您可以使用 在每个部分后手动添加空格\addtocontents
。
\documentclass{article}
\usepackage{caption}
\usepackage{chngcntr}
\counterwithin{figure}{section}
\renewcommand{\thefigure}{\thesection.\arabic{figure}}
\begin{document}
\listoffigures
\section{First}
\captionof{figure}{Ichi}
\captionof{figure}{Ni}
\section{Second}
\addtocontents{lof}{\rule{\textwidth}{0pt}}
\captionof{figure}{San}
\captionof{figure}{Shi}
\end{document}