条件间距

条件间距

这是我在 stackexchange 上的第一个问题!

我正在使用 tocloft 包撰写论文,我的大学要求在目录中的章节标题前后使用双倍行距,但前提是该章节有章节。

我在想我需要某种方法来检测章节是否有节,或者在每个章节的第一节之前添加换行符。有人能建议一种方法来实现这一点吗?

答案1

如果我理解了您的问题,那么您可以使用该etoolbox包挂接到命令\section,以在目录中添加垂直间距(如果部分计数器为 1):

\documentclass[a4paper]{book}
\usepackage{etoolbox}
\usepackage{tocloft}

\preto\section{%
  \ifnum\value{section}=0\addtocontents{toc}{\vskip10pt}\fi
}

\begin{document}

\tableofcontents

\chapter{A chapter with sections}
\section{Section one one}
\section{Section one two}
\chapter{A chapter without sections}
\chapter{Another chapter with sections}
\section{Section one one}
\section{Section one two}

\end{document}

在此处输入图片描述

相关内容