我正在使用 tocloft 来修改目录的外观。但它会禁用使用 titlesec 修改的目录标题的样式。
如果我禁用 \usepackage{tocloft} 和两个 renew 命令,我的标题将会被加下划线。
我怎样才能解决这个问题?
%! TEX program = lualatex
% minimal.tex
\documentclass[a4paper, 10pt]{article}
\usepackage{titlesec}
\usepackage{tocloft}
\begin{document}
\renewcommand{\cftsecleader}{\cftdotfill{\cftdotsep}}
\renewcommand{\cftdotsep}{1}
\titleformat{\section}
{\normalfont\Large\bfseries}{\thesection}{1em}{}[{\titlerule[0.2pt]}]
\tableofcontents
\newpage
\section{Content}
Write something
\end{document}
答案1
既然,你加载了,titlesec
为什么不使用titletoc
?你可以删除内容标题下的规则,方法是为未编号的部分定义一个特定的格式,关键是numberless
:
\documentclass[a4paper, 10pt]{article}
\usepackage{titlesec}
\usepackage{titletoc}
\titleformat{\section}
{\normalfont\Large\bfseries}{\thesection}{1em}{}[{\titlerule[0.2pt]}]
%
\titleformat{name=\section, numberless}
{\normalfont\Large\bfseries}{}{0em}{}
\titlecontents{section}[0em]{\medskip\bfseries}%
{\thecontentslabel.\enspace}%numbered
{}%numberless
{\titlerule*[0.4pc]{.}\contentspage}%
\begin{document}
\tableofcontents
\newpage
\section{Content}
Write something
\end{document}
答案2
或者,您可以tocloft
使用该titles
选项加载;另请参阅手册:http://mirrors.ctan.org/macros/latex/contrib/tocloft/tocloft.pdf。