我正在使用该类scrbook
,但使用patchcmd
我从中复制粘贴的这里却不理解它。
当这导致章节标题恰好位于页面的开头时,目录会将该章节列为位于上一页(的末尾)。
以下 MWE 证明了这一点:目录将第二章列在第 1 页。
\documentclass[]{scrbook}
% remove pre-chapter pagebreak as per https://tex.stackexchange.com/a/24067
\usepackage{etoolbox}
\makeatletter
\patchcmd{\scr@startchapter}{\if@openright\cleardoublepage\else\clearpage\fi}{}{}{}
\makeatother
\begin{document}
\tableofcontents
\chapter{First Chapter}
Lorem ipsum
\vspace{11cm}
This page is pretty full.
\chapter{Second Chapter}
More lorem ipsum
\end{document}
如何修复目录中的页码?我并不介意这个解决方案是否有点儿奇怪。
scrbook
附加问题:这样使用是否是一种严重的滥用?有没有更好的方法来删除分页符?
答案1
避免修补内部命令。您可以使用将以下内容\RedeclareSectionCommand
更改为:style
section
\chapter
\documentclass[]{scrbook}
\RedeclareSectionCommand[
style=section,
indent=0pt
]{chapter}
\begin{document}
\tableofcontents
\chapter{First Chapter}
Lorem ipsum
\par\vspace{11cm}
This page is pretty full.
\chapter{Second Chapter}
More lorem ipsum
\end{document}
结果: