目录中的部分内容带有背景颜色

目录中的部分内容带有背景颜色

我如何修改部件样式,以便获得灰色背景而不是规则?我正在使用 tocloft 包。

\addtocontents{toc}{\protect\mbox{}\protect\hrulefill\par}

\documentclass{book}
\usepackage{tocloft}
\begin{document}
\tableofcontents

\part{Part 1}
\addtocontents{toc}{\protect\mbox{}\protect\hrulefill\par}
\chapter{Lorem ipsum}
\section{Dolor sit amet}

\end{document}

答案1

我的解决方案是使用tcolorbox重新定义标准类命令的包\l@part[2]

\documentclass{book}
\usepackage{tocloft}
\usepackage{tcolorbox}

\makeatletter
\renewcommand*\l@part[2]{%
  \ifnum \c@tocdepth >-2\relax
    \addpenalty{-\@highpenalty}%
    \addvspace{2.25em \@plus\p@}%
    \setlength\@tempdima{3em}%
    \begingroup
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \begin{tcolorbox}[colback=black!10, right=0.5ex, left=0cm, sharpish corners, boxrule=0mm, width=1.01\textwidth]
      {\leavevmode
       \large \bfseries \vbox{\sffamily\bfseries#1}%
      \hb@[email protected]{\hss #2}
       }
       \end{tcolorbox}
       \vspace*{1ex}
       \nobreak
         \global\@nobreaktrue
         \everypar{\global\@nobreakfalse\everypar{}}%
    \endgroup
  \fi}
 \makeatother
\begin{document}
\tableofcontents

\part{Part 1}
\chapter{Lorem ipsum}
\section{Dolor sit amet}

\end{document}

在此处输入图片描述

相关内容