算法列表中的行距

算法列表中的行距

这是我的代码:

 \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@}}%
%...

搜索\patchcmdin\chaptermark{#1}并将\@chapter其替换为

\chaptermark{#1}%
\addtocontents{loa}{\protect\addvspace{10\p@}}%

在 LoA 中有效地插入必要的章节空白。


确保加载影响分段单元的任何包\chapter 执行此修补程序。如果您使用hyperrefminitoc. 其他分段式包装,如titlesec与上述补丁不兼容。

相关内容