如何使用section命令并保持目录清晰?

如何使用section命令并保持目录清晰?

我想将章​​节格式改为更长的格式,但目录与章节重叠。我该如何解决这个问题?

\documentclass{article}
\usepackage[utf8]{inputenc}

\renewcommand{\thesection}{some text \arabic{section}}

\begin{document}

\tableofcontents

\section{Introduction}

\section{Example}

\end{document}

结果:目录中的文本重叠

答案1

titletoc包提供了一种配置 ToC 条目的简单方法。

\titlecontents{⟨section⟩}[⟨left⟩]{⟨above-code⟩}
{⟨numbered-entry-format⟩}{⟨numberless-entry-format⟩}
{⟨filler-page-format⟩}[⟨below-code⟩]

可以通过设置编号条目格式在章节编号前添加文本。这需要将文本括在parbox足够宽的数字中,以包含所选文本和最多两位数的章节编号,以使章节标题在目录中对齐。

为了简化这个过程,我们使用了eqparbox使盒子与组中最宽的成员一样宽的包装(sect在示例中调用)。

A

\documentclass{article}

\usepackage{eqparbox} % make  boxes as wide as the widest member of the group <<<<<<<<<
\usepackage{titletoc} % added <<<<<<<<


\titlecontents{section}
[0em]
{\vspace{.25\baselineskip}}
{\eqparbox{sect}{Some Text \thecontentslabel}\enspace}{}
{\hspace{1ex}\titlerule*[5pt]{$\cdot$}\contentspage}


\begin{document}
    
\tableofcontents

\section{Introduction}

\section{Example}

\end{document} 

要检查代码,请添加更多文本和/或创建一个用两位数编号的部分。

\documentclass{article}

\usepackage{eqparbox} % make  boxes as wide as the widest member of the group <<<<<<<<<
\usepackage{titletoc} % added <<<<<<<<


\titlecontents{section}
[0em]
{\vspace{.25\baselineskip}}
{\eqparbox{sect}{Some more Text \thecontentslabel}\enspace}{}
{\hspace{.5em}\titlerule*[10pt]{$\cdot$}\contentspage}


\begin{document}
    
\tableofcontents

\section{Introduction}

\section{Example}

\setcounter{section}{9} % to create section 10

\section{Conclusion}
\end{document} 

d

有时更改配置时需要编译两次。

答案2

使用该tocloft包配置 ToC、LoF 和 LoT 条目。

% tocsecnumprob.tex  SE 666590

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{tocloft}
\addtolength{\cftsecnumwidth}{5em} % more space for section number in ToC

\renewcommand{\thesection}{some text \arabic{section}}

\begin{document}

\tableofcontents

\section{Introduction}

\section{Example}

\end{document}

相关内容