Estoy intentando crear el siguiente ToC contitletoc
paquete:
Chapter 1 .......... 1
Chapter 2 .......... 10
Chapter 3 .......... 20
El titletoc
código es el siguiente:
\titlecontents{chapter}[0.5cm] % Indentation
{\addvspace{5pt}\sc} % Spacing and font options for chapters
{\contentslabel[\large\chaptername\ \thecontentslabel]{0.5cm}} % Chapter number
{}
{\normalsize\titlerule*[5pt]{.}\contentspage} % Page number
y para hacer el capítulo solo uso el comando:
\chapter{}
El problema es que veo las líneas de puntos sobre la etiqueta del capítulo x. En otras palabras, las líneas de puntos no comienzan cuando termina la etiqueta "capítulo x", sino que comienzan en el mismo punto (inicio de la línea).
¿Hay alguna manera de superar este problema?
Respuesta1
Tendrías que proporcionar suficiente espacio para que \contentslabel
quepa el contenido adicional que forma parte, pero también ajustar la sangría:
\documentclass{report}
\usepackage{titletoc}
\titlecontents{chapter}[25mm] % Indentation
{\addvspace{5pt}} % Spacing options for chapters
{\contentslabel[\scshape\large\chaptername\ \thecontentslabel]{25mm}} % Chapter number
{}
{\normalsize\titlerule*[5pt]{.}\contentspage} % Page number
\begin{document}
\tableofcontents
\chapter{A chapter}
\chapter{}
\end{document}
Arriba, el \chapter
espaciado relacionado se proporciona como 25mm
, mientras que a se le asigna un espaciado \contentslabel
similar . 25mm
Se podría calcular esta distancia con un poco más de precisión, pero no parece necesario.
Si quieres evitar el usotitletoc
, puede parchear algunas macros relacionadas con capítulos para lograr un resultado similar:
\documentclass{report}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@chapter}% <cmd>
{\numberline{\thechapter}}% <search>
{{\normalfont\scshape\large\@chapapp~\thechapter}~}% <replace>
{}{}% <success><failure>
% Remove bold formatting of chapters in ToC
\patchcmd{\l@chapter}{\bfseries}{}{}{}
% Add dotted ToC line for chapter entries in ToC
\patchcmd{\l@chapter}% <cmd>
{\hfil}% <search>
{\leaders\hbox{$\m@th
\mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill}% <replace>
{}{}% <success><failure>
\makeatother
\begin{document}
\tableofcontents
\chapter{A chapter}
\chapter{}
\end{document}
La separación anterior entre puntos está dada por lavaloren el\@dotsep
macro, que por defecto es 4.5
(mu). Para obtener algo similar a la titletoc
regla de puntos, utilice el siguiente parche:
\patchcmd{\l@chapter}% <cmd>
{\hfil}% <search>
{\leaders\hbox{\makebox[5pt]{.}}\hfill}% <replace>
{}{}% <success><failure>