目录中编号标题的额外空间

目录中编号标题的额外空间

背景

包含章节、节、小节和小小节的手册。使用 KOMA Script v2。

问题

在某些情况下,标题和数字之间的间距太接近数字:

在此处输入图片描述

看完tocloft包装后,我不知道如何调整标题和数字之间的间距。

问题

如何一致地增加章节标题前的空间?

想法

尝试包括以下包:

\usepackage[tocindentauto]{tocstyle}

尝试设置线宽:

\setlength{\linewidth}{15em}

尝试设置 dottedtocline:

\makeatletter
\renewcommand*{\l@section}{\@dottedtocline{1}{4.5em}{5.3em}}
\makeatother

最后的尝试看起来很有希望,但正确调整边距却很棘手。

参考

答案1

当前的 KOMA-Script 版本提供了选项tocindenttocnumwidth允许\RedeclareSectionCommand更改缩进和为条目编号保留的空间,而不会破坏 KOMA-Script 类的任何功能。

\documentclass{scrbook}

\RedeclareSectionCommand[tocnumwidth=2.6em]{section}
\RedeclareSectionCommand[tocindent=4.1em,tocnumwidth=3.5em]{subsection}

\begin{document}
\tableofcontents
% Only some dummy test code:
\clearpage
\setcounter{chapter}{15}
\setcounter{section}{9}
\section{Classes}
\subsection{Abstract}
\subsection{Concrete}
\subsection{Exception}
\section{Automation}
\section{Summary}
\end{document}

例如,将导致:

在此处输入图片描述

答案2

对我来说,tocstyle 可以生成正确的水平间距,无论是标准类还是 KOMA 脚本类。尝试使用三到四次 LaTeX 运行来编译我的示例 - 也许您使用的 makefile 无法识别 tocstyle 需要另一次 LaTeX 运行来计算 ToC 间距。

\documentclass{scrreprt}

\usepackage{tocstyle}

\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{3}

\begin{document}

\tableofcontents

\setcounter{chapter}{100}
\chapter{bla}
\setcounter{section}{200}
\section{blubb}
\setcounter{subsection}{300}
\subsection{foo}
\setcounter{subsubsection}{400}
\subsubsection{bar}

Some text.

\end{document}

答案3

当使用tocloft是一项要求时,该\cftsetindents命令会解决给定的问题,例如:

\cftsetindents{section}{0em}{2.5em}
\cftsetindents{subsection}{1em}{3.5em}

使用此解决方案,可以为每个级别设置不同的缩进和数字宽度。此命令也可用于图形;有关更多信息,请参阅tocloft软件包手册。

答案4

在序言中添加以下内容:

\usepackage[tocindentauto]{tocstyle}

其次是

\usetocstyle{standard}

\usetocstyle{KOMAlike}

相关内容