缩进目录中的小节

缩进目录中的小节

在此处输入图片描述

左上方是我正在撰写的论文中的当前目录,我真的希望我可以像我在右侧显示的那样缩进子部分(我承认我刚刚在 Paint 中将它们全部移动到 16px 以上,这似乎是理想的量)。

有人知道我该如何将其纳入我的论文中吗?

这是我能管理的最小的 MWE:

\documentclass[10pt,article]{amsart}

\begin{document}

\tableofcontents

\section{Section A}
\subsection{Subsection (16px Indent)}
\subsection{Subsection (16px Indent)}
\section{Section B}
\subsection{Subsection (16px Indent)}
\subsection{Subsection (16px Indent)}

\end{document}

答案1

也许下面的代码可以满足您的需要。

\documentclass[10pt,article]{amsart}

\makeatletter
\def\@tocline#1#2#3#4#5#6#7{\relax
  \ifnum #1>\c@tocdepth % then omit
  \else
    \par \addpenalty\@secpenalty\addvspace{#2}%
    \begingroup \hyphenpenalty\@M
    \@ifempty{#4}{%
      \@tempdima\csname r@tocindent\number#1\endcsname\relax
    }{%
      \@tempdima#4\relax
    }%
    \parindent\z@ \leftskip#3\relax \advance\leftskip\@tempdima\relax
    \rightskip\@pnumwidth plus4em \parfillskip-\@pnumwidth
    #5\leavevmode\hskip-\@tempdima
      \ifcase #1
       \or\or \hskip 1em \or \hskip 2em \else \hskip 3em \fi%
      #6\nobreak\relax
    \hfill\hbox to\@pnumwidth{\@tocpagenum{#7}}\par% <---- \dotfill -> \hfill
    \nobreak
    \endgroup
  \fi}
\makeatother

\begin{document}

\tableofcontents

\section{Section A}
\subsection{Subsection (16px Indent)}
\subsection{Subsection (16px Indent)}
\section{Section B}
\subsection{Subsection (16px Indent)}
\subsection{Subsection (16px Indent)}

\end{document}

以下是PDF样式。

在此处输入图片描述

答案2

如果您可以使用标准类,则目录中的缩进是默认的。在这种情况下,您可能希望加载一些额外的包来排版数学。默认情况下,这些包由 AMS 类使用,但您必须使用标准类专门加载它们。

例如,

\documentclass{article}
\usepackage{amssymb,amsmath,amsthm}
\begin{document}

\tableofcontents

\section{Section A}
\subsection{Subsection (16px Indent)}
\subsection{Subsection (16px Indent)}
\section{Section B}
\subsection{Subsection (16px Indent)}
\subsection{Subsection (16px Indent)}

\end{document}

生产

目录中的缩进

这是否是最佳选择取决于您的需求。通常,在其他条件相同的情况下,选择一个与主要文档元素的布局尽可能接近的类,这样您就无需进行太多调整来自定义它。其他条件并不总是相同的。有些类的编码很糟糕,最好避免使用。但默认类、AMS 类、KOMA、Memoir 等都是不错的起点。

相关内容