Estou tentando criar o seguinte ToC comtitletoc
pacote:
Chapter 1 .......... 1
Chapter 2 .......... 10
Chapter 3 .......... 20
O titletoc
código é o seguinte:
\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
e para fazer o capítulo eu apenas uso o comando:
\chapter{}
O problema é que vejo as linhas pontilhadas sobre o rótulo do capítulo x. Em outras palavras, as linhas pontilhadas não iniciam quando o rótulo “capítulo x” termina, mas iniciam no mesmo ponto (início da linha).
Existe uma maneira de superar esse problema?
Responder1
Você teria que fornecer espaço suficiente para o conteúdo adicional que faz parte \contentslabel
caber, mas também ajustar o recuo:
\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}
Acima, o \chapter
espaçamento relacionado é fornecido como 25mm
, enquanto é fornecido um espaçamento \contentslabel
semelhante . 25mm
Poderíamos calcular esta distância com um pouco mais de precisão, mas isso não parece ser necessário.
Se você quiser evitar o usotitletoc
, você pode corrigir algumas macros relacionadas ao capítulo para obter um resultado semelhante:
\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}
A separação acima entre pontos é dada porvalorno\@dotsep
macro, cujo padrão é 4.5
(mu). Para obter algo semelhante à titletoc
regra pontilhada, use o seguinte patch:
\patchcmd{\l@chapter}% <cmd>
{\hfil}% <search>
{\leaders\hbox{\makebox[5pt]{.}}\hfill}% <replace>
{}{}% <success><failure>