在我的目录中,我想在简介后面插入“第 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}
运行三次即可获得