我有一个文档,其中包含使用
\usepackage[toc]{multitoc}
\renewcommand*{\multicolumntoc}{3}
我使用以下命令来创建章节并将其添加到目录中,因为我不希望章节编号出现在任何地方:
\newcommand{\myChapter}[1]{
\chapter*{#1}
\addcontentsline{toc}{chapter}{#1}
}
我想在这个目录中的每一章标题下添加一行,但我就是不知道该怎么做。它最终应该看起来像这样:
Chapter 1 1.1.3 Subsection 2.1.1 Subsection
----------------- 2.1.2 Subsection
1.1 Section Chapter 2
1.1.1 Subsection -----------------
1.1.2 Subsection 2.1 Section
我已经看过托克洛夫特包并给出了各部分的示例:
\part{Part title}
\addtocontents{toc}{\protect\mbox{}\protect\hrulefill\par}
这可行,但我感兴趣的是针对章节而不是部分进行操作。我看过使用 tocloft 包和 cftchapaftersnum 覆盖 ToC 中的超满水平盒子(页面中间)和如何改变 ToC 和 \chapter 的样式?并按照答案操作,但没有成功。该行根本没有显示出来。
谁能告诉我怎样才能画出这些线条?
答案1
您可以使用\addtocontents
添加规则:
\documentclass{book}
\usepackage[toc]{multitoc}
\renewcommand*{\multicolumntoc}{3}
\newcommand{\myChapter}[1]{%
\chapter*{#1}%
\addcontentsline{toc}{chapter}{#1}%
\addtocontents{toc}{\vskip-6pt\par\noindent\protect\hrulefill\par}
}
\begin{document}
\tableofcontents
\myChapter{A test chapter}
\addtocontents{toc}{}
\section{A test section}
\section{A test section}
\section{A test section}
\section{A test section}
\section{A test section}
\myChapter{A test chapter}
\section{A test section}
\section{A test section}
\section{A test section}
\myChapter{A test chapter}
\section{A test section}
\section{A test section}
\section{A test section}
\end{document}
我不太明白的是,您不希望出现章节编号,但您的示例在章节之前显示了章节计数器。