我已将 ToC 配置如下:
\documentclass{scrbook}
\usepackage{tocloft}
\renewcommand{\cftchappresnum}{\textmd{\emph\chaptername\ }}
\renewcommand{\cftchapaftersnumb}{\\ }
\cftsetindents{chapter}{0em}{0em}
\begin{document}
\tableofcontents
\chapter{A chapter-heading. Great.}
\end{document}
得出以下结论:
这几乎包含了我想要的一切,除了 ›Chapter‹ 后面的章节号是粗体的。我无法跟踪它的格式,因此无法更改它。有什么想法可以做到这一点吗?更改托克洛夫特-macro\cftchapfont
将改变整个条目,但我只想强调›Chapter‹ 及其相应的数字,我已经尝试过了\cftchappresnum
。
答案1
使用 KOMA-Script\RedeclareSectionCommand
来代替以下方法非常容易tocloft
:
\documentclass{scrbook}
\RedeclareSectionCommand[%
tocbreakafternumber,% line break after chapter number
tocentrynumberformat=\chaptertocnumber,% new format of the chapter number
tocdynnumwidth,% avoid overfull \hbox message
]{chapter}
\newcommand*{\chaptertocnumber}[1]{\mdseries\itshape\chaptername~#1}
\begin{document}
\tableofcontents
\chapter{A chapter-heading. Great.}
\end{document}
如果附录的章节条目应自动以Appendix
而不是为前缀,则Chapter
可以使用:
\documentclass{scrbook}
\RedeclareSectionCommand[%
tocbreakafternumber,
tocentrynumberformat=\chaptertocnumber,
tocdynnumwidth
]{chapter}
\newcommand*{\chaptertocnumber}[1]{\mdseries\itshape #1}
\let\originaladdchaptertocentry\addchaptertocentry
\renewcommand*{\addchaptertocentry}[2]{%
\IfArgIsEmpty{#1}{%
\originaladdchaptertocentry{#1}{#2}%
}{%
\originaladdchaptertocentry{\chapapp~#1}{#2}% add current "Chapter" or "Appendix" before the number
}%
}
\begin{document}
\tableofcontents
\chapter{A chapter-heading. Great.}
\appendix
\chapter{An appendix-heading}
\end{document}