这错了吗?
似乎目录只对章节进行点填充,而不对子章节进行点填充。为什么会发生这种情况?我该如何修复?
我正在使用\tableofcontents
而没有使用其他任何东西来生成此目录,文档类是article
。
编辑:是的;我想用点填充各节中的空间,从节标题的末尾到数字的开头,就像用点填充小节 5.1 一样
MWE 如下:
\documentclass[a4paper,spanish]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
\usepackage[spanish]{babel}
\usepackage{graphicx}
\usepackage{wrapfig}
\usepackage{setspace}
\usepackage[right]{eurosym}
\usepackage{rotating}
\usepackage{ccicons}
\usepackage{multirow}
\usepackage{tabu}
\usepackage{amsmath,amssymb,amsthm,amscd}
\usepackage{amsmath}
\graphicspath{{./Imagenes/}} %Lugar en el que se guardarán las imágenes
\itemsep 1ex
\newcommand{\RNum}[1]{\uppercase\expandafter{\romannumeral #1\relax}}
\begin{document}
\tableofcontents % Índice
\newpage % Salto de página
\section{Los tres tipos generales de conocimiento} % Sección superior
bar
\section{Superioridad del saber-que}
foo
\section{Lo inefable}
barfoo
\section{Las condiciones de la verdad}
foobar
\section{Las fuentes del conocimiento}
bar
\subsection{La experiencia sensorial}
foo
\end{document}
答案1
如果您不想寻找正确的长度作为参数tocloft
或titletoc
命令,您也可以修补命令\l@section
以使用与其他命令相同的前导符而不是空格:
\documentclass[a4paper]{article}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\l@section}
{\hfil}
{\leaders\hbox{\normalfont$\m@th\mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill}
{}{}
\makeatother
\begin{document}
\tableofcontents % Índice
...
\end{document}
答案2
目录中article.cls
章节条目的默认行为是不使用虚线前导符;如果您想要这些,您可以使用tocloft
打包并重新定义\cftsecleader
以获得以下点:
\documentclass{article}
\usepackage{tocloft}
\renewcommand\cftsecleader{\cftdotfill{\cftdotsep}}
\begin{document}
\tableofcontents
\section{Test Section}
\subsection{Test Subsection}
\end{document}
另一个选择是使用titletoc
包及其\dottedcontents
命令:
\documentclass{article}
\usepackage{titletoc}
\dottedcontents{section}[1.5em]{\bfseries}{1.3em}{.6em}
\begin{document}
\tableofcontents
\section{Test Section}
\subsection{Test Subsection}
\end{document}
还有一种选择,不需要额外的包,那就是重新定义内部命令\l@section
(负责排版目录中的部分条目)以使用\@dottedtocline
:
\documentclass{article}
\makeatletter
\renewcommand*\l@section{\@dottedtocline{1}{0em}{1.5em}}
\makeatother
\begin{document}
\tableofcontents
\section{Test Section}
\subsection{Test Subsection}
\end{document}