如何使用 tocloft 为目录中各部分的标题背景着色?

如何使用 tocloft 为目录中各部分的标题背景着色?

从标题就可以猜到,我正在使用该包tocloft来定制文档的目录,顺便说一下,我正在用 LuaTeX 进行编译。

我希望得到的最终结果可以简化如下:

desired TOC

我无法自行实现的功能是部分标题的黑色背景。请忽略我发布的图片的其他设计特征,这些特征可能与标准 latex TOC 不同(例如缺少页码)。

你知道我怎样才能达到这样的效果吗?谢谢。

答案1

您可能需要研究一下titletoc,它允许\colorbox在不进行黑客攻击的情况下使用。

如果你真的想继续使用,tocloft你可以使用一个 hack:在中捕获标题\hbox,然后\unhbox在颜色框中:

\documentclass{book}
\usepackage{tocloft,xcolor}
\newcommand\cftafterparttitle{%
  \setlength\fboxsep{1pt}\colorbox{black}{\unhbox0}\egroup%
}
\expandafter\renewcommand
  \expandafter\cftpartfont
  \expandafter{\cftpartfont
    \color{white}%
    \setbox0\hbox\bgroup
      \aftergroup\cftafterparttitle
}
\begin{document}
\tableofcontents
\part{Teil 1}
\chapter{Kapitel 1}
\section{Abschnitt 1}
\part{Teil 2}
\chapter{Kapitel 2}
\section{Abschnitt 2}
\end{document}

enter image description here

相关内容