这是我的代码:
\documentclass[12pt,a4paper]{book}
\usepackage[T1]{fontenc}
\usepackage[chapter]{algorithm}
\renewcommand{\baselinestretch}{1.5}
\begin{document}
\begin{spacing}{1.2}
\tableofcontents
\backmatter
{\listoffigures \listoftables \listofalgorithms} \end{spacing}
\include{Chapter1}
\include{Chapter2}
\end{document}
在 PDF 文件中,我有:在图列表中,图 2.1 和图 2.2 之间的空间小于图 2.2 和图 3.1 之间的空间,但在算法列表中,我到处都有相同的空间,您有什么想法吗?
我想要一份像图列表一样的算法列表,谢谢。
相似的:
答案1
针对此问题的一个补丁由etoolbox
包裹。默认在 LoF 和 LoT 的章节分隔符之间\chapter
插入垂直间隙。只需将类似的间隙作为宏的一部分添加到 LoA 即可:10pt
\@chapter
\documentclass[12pt]{book}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@chapter}% <cmd>
{\chaptermark{#1}}% <search>
{\chaptermark{#1}%
\addtocontents{loa}{\protect\addvspace{10\p@}}}% replace
{}{}% <success><failure>
\makeatother
\usepackage[chapter]{algorithm}% http://ctan.org/pkg/algorithms
\begin{document}
\tableofcontents
\listofalgorithms
\chapter{A chapter}
\begin{algorithm}\caption{An algorithm}\end{algorithm}
\begin{algorithm}\caption{An algorithm}\end{algorithm}
\chapter{A chapter}
\begin{algorithm}\caption{An algorithm}\end{algorithm}
\begin{algorithm}\caption{An algorithm}\end{algorithm}
\end{document}
原始\@chapter
命令包含:
%...
\chaptermark{#1}%
\addtocontents{lof}{\protect\addvspace{10\p@}}%
\addtocontents{lot}{\protect\addvspace{10\p@}}%
%...
搜索\patchcmd
in\chaptermark{#1}
并将\@chapter
其替换为
\chaptermark{#1}%
\addtocontents{loa}{\protect\addvspace{10\p@}}%
在 LoA 中有效地插入必要的章节空白。
确保加载影响分段单元的任何包\chapter
后执行此修补程序。如果您使用hyperref
和minitoc
. 其他分段式包装,如titlesec
与上述补丁不兼容。