减少章节编号和章节标题之间的间距

减少章节编号和章节标题之间的间距

我按照以下方式创建第四级部分标题关联

使用下面的代码片段,创建了第四级,但我想减少章节编号和章节标题之间的间距,例如1.1.1.1 D1

\documentclass{article}
\makeatletter
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
    {-2.5ex\@plus -1ex \@minus -.25ex}%
    {1.25ex \@plus .25ex}%
    {\normalfont\normalsize\bfseries}}
\makeatother
\setcounter{secnumdepth}{4} % how many sectioning levels to assign numbers to
\setcounter{tocdepth}{4}    % how many sectioning levels to show in ToC

\begin{document}
    \tableofcontents
    \section{A}
    \subsection{B}
    \subsubsection{C1}
    \paragraph{D1}
    \paragraph{D2}
\end{document}

下面的图可以说明我的困惑:

在此处输入图片描述

我只是想减少红色矩形所表示的空间。

任何帮助都将不胜感激!

答案1

您需要更改l@paragraph(l代表“列表”) 中的最后一个长度:

\documentclass{article}
\makeatletter
\renewcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{3.5em}}\makeatother
\setcounter{secnumdepth}{4} % how many sectioning levels to assign numbers to
\setcounter{tocdepth}{4}    % how many sectioning levels to show in ToC

\begin{document}
    \tableofcontents
    \section{A}
    \subsection{B}
    \subsubsection{C1}
    \paragraph{D1}
    \paragraph{D2}
\end{document}

澄清:

每个标题都有一个l@出现在的命令article.cls(位于大多数 tex 版本的texmf-dist/tex/latex/base/article.cls)。原始值为4.1em

就在您可以找到针对 section( ) 和 subsection 的l@paragraph类似命令之前。l@section

在此处输入图片描述

相关内容