如何删除 KOMAscript 类中的目录标题?

如何删除 KOMAscript 类中的目录标题?

在“正常”类别中,可以删除目录标题(“内容”标题),

\renewcommand\tableofcontents{\@starttoc{toc}}

但是当我在 KOMAScript 类(例如scrartcl)上执行此操作时,这也会改变我不想更改的 KOMAscript 的一些其他设置(例如垂直空间)。

我怎样才能仅删除目录的标题而不更改其他任何内容?

注意:我不希望该行为空(因此,不是一个空字符串"",就像\renewcommand{\contentsname}{}会做的那样),而是标题根本不存在并且空间被“释放”。

答案1

使用该\phantom命令可以提供帮助:它充当并使用框作为内容\contentsname,就好像它存在一样,但输出具有正确尺寸的空框。

但是,原始\contentsname内容必须通过\let 命令存储到其他宏中,然后才能重新定义。

\documentclass[paper=a4,12pt]{scrartcl}


% Redefine the contentsname, but save it before...
\let\LaTeXStandardContentsName\contentsname
\renewcommand{\contentsname}{\phantom{\LaTeXStandardContentsName}}%

\begin{document}
\tableofcontents%
\clearpage

\section{First}
\clearpage
\section{Second}

在此处输入图片描述

“相同”的代码不\renewcommand提供\contentsname上述内容,也不提供垂直移位。



经过一些误解之后,解决方案似乎是\deftocheading{toc}{}方法,手册中的一个隐藏的命令;-)

\documentclass[paper=a4,12pt]{scrartcl}

\deftocheading{toc}{}%
\begin{document}
\tableofcontents%
\clearpage

\section{First}
\clearpage
\section{Second}

\end{document}

相关内容