如何在文档的目录和页眉中创建第 1 章:标题?

如何在文档的目录和页眉中创建第 1 章:标题?

在我的目录中,我想在简介后面插入“第 1 章:”、“第 2 章:”等, \mychapter{2}{Title}然后继续。它应该在同一行。

此外,是否也可以将其放在每个\mychapter{2}{TITLE}, \mychapter{3}{TITLE},上方的标题中\mychapter{4}{TITLE}

这是我的文档类:

\documentclass[12pt,openany]{scrreprt}

使用的原因\mychapter是通常在每章之前显示的数字被删除。

是否有可能做到这一点?

答案1

如果章节编号不应显示在标题中,请使用

\renewcommand*{\chapterformat}{}

但是如果你想要章节标题的前缀行,请使用 class 选项chapterprefix

\renewcommand*{\chapterformat}{%
  \mbox{\chapappifchapterprefix{\nobreakspace}\thechapter\autodot:
    \IfUsePrefixLine{}{\enskip}}%
}

在数字后添加冒号。

要更改页眉中条目的格式,请使用

\renewcommand*{\chaptermarkformat}{\chapapp\ \thechapter\autodot:\enskip}

以及目录条目

\let\originaladdchaptertocentry\addchaptertocentry
\renewcommand*{\addchaptertocentry}[2]{%
  \IfArgIsEmpty{#1}
    {\originaladdchaptertocentry{#1}{#2}}
    {\originaladdchaptertocentry{\chapappifchapterprefix{\nobreakspace}#1\autodot}{#2}}%
}
\RedeclareSectionCommand[
  tocentrynumberformat={\def\autodot{:}},
  tocdynnumwidth
]{chapter}

例子:

\documentclass[
  12pt,
  chapterprefix,% use a prefix line for chapters
  numbers=noenddot% no dot at the end of numbers
]{scrreprt}
\usepackage{lipsum}% only for dummy text
\pagestyle{headings}

\renewcommand*{\chapterformat}{%
  \mbox{\chapappifchapterprefix{\nobreakspace}\thechapter\autodot:
    \IfUsePrefixLine{}{\enskip}}%
}
\renewcommand*{\raggedchapter}{\centering}
\renewcommand*{\chaptermarkformat}{\chapappifchapterprefix{\nobreakspace}\thechapter\autodot:\enskip}

\let\originaladdchaptertocentry\addchaptertocentry
\renewcommand*{\addchaptertocentry}[2]{%
  \IfArgIsEmpty{#1}
    {\originaladdchaptertocentry{#1}{#2}}
    {\originaladdchaptertocentry{\chapappifchapterprefix{\nobreakspace}#1\autodot}{#2}}%
}
\RedeclareSectionCommand[
  tocentrynumberformat={\def\autodot{:}},
  tocdynnumwidth
]{chapter}

\begin{document}
\tableofcontents
\chapter{Foo}
\lipsum
\appendix
\chapter{Bar}
\lipsum
\end{document}

运行三次即可获得

在此处输入图片描述

相关内容