如何在调整垂直间距的所有部分之后正确地向目录添加水平线(使用 scrbook 时)

如何在调整垂直间距的所有部分之后正确地向目录添加水平线(使用 scrbook 时)

我想在目录中的所有部分后添加一条水平线。我发现 tocloft 包的文档(版本 10.01.2020)第 5 页明确提到了这一点,使用:

\part{Part title}
\addtocontents{toc}{\protect\mbox{}\protect\hrulefill\par}

对于我使用 scrbook 的情况,这也有效,但我不确定这是否是向我的 ToC 添加此类行的正确方法,因为它在部分标题和水平线之间添加了很多不需要的垂直空间(见下图)。

我应该如何在所有部分标题后添加这样一行(使用 KOMA 脚本而不使用 tocloft 包修改目录),以及如何更改部分标题和水平线之间的垂直空间?

在此处输入图片描述

答案1

部分条目似乎不应该有页码?

\documentclass[toc=chapterentrywithdots,numbers=noenddot]{scrbook}
\usepackage{blindtext}% only for dummy documents

\DeclareTOCStyleEntry[
  pagenumberbox=\linebelow
]{tocline}{part}
\newcommand*\linebelow[1]{\hfil \makebox[0pt][r]{\rule[-\dp\strutbox]{\textwidth}{.4pt}}}

\begin{document}
\tableofcontents
\part{Catalytic Carbon Dioxide Reduction}
\chapter{Introduction}
\Blindtext
\chapter{State of Knowledge}
\Blindtext
\part{Next Part}
\blinddocument
\end{document}

在此处输入图片描述

相关内容