在我的论文中,有一个部分的名称很长,它必须完整地出现在目录中。
标题由三行组成,不幸的是,它被分成了两个不同的页面。有没有办法通过将整个章节标题放在第二页来解决这个问题?
谢谢!
答案1
您可以采用这个答案由 Karl 提供。如果您希望该部分保留在当前页面中,则可以使用
\addtocontents{toc}{\protect\enlargethispage{\baselineskip}} % here
适当改变\baselineskip
。
代码:(摘自链接答案):
\documentclass[12pt]{book}
\begin{document}
\tableofcontents
\chapter{Chapter}
\section{Section}
\section{Section}
\chapter{Chapter}
\section{Section}
\subsection{Subsection}
\subsection{Subsection}
\section{Section}
\subsection{Subsection}
\subsection{Subsection}
\chapter{Chapter}
\section{Section}
\section{Section}
\chapter{Chapter}
\section{Section}
\subsection{Subsection}
\subsection{Subsection}
\section{Section}
\subsection{Subsection}
\subsection{Subsection}
\chapter{Chapter}
\section{Section}
%\addtocontents{toc}{\protect\pagebreak[4]} % here
\addtocontents{toc}{\protect\enlargethispage{\baselineskip}} % here
\section{Section that has some long lines Section that has some long lines Section that has some long lines Section that has some long lines Section that has some long lines}
\subsection{Subsection}
\subsection{Subsection}
\subsection{Subsection}
\end{document}
答案2
如果\documentclass
是标准类,则可以切换到对应的 KOMA-Script 类。这些类会自动阻止在目录中拆分条目。文档类article
、report
和book
可以分别替换为scrartcl
、scrreprt
和scrbook
。
headings=standardclasses
(由于 KOMA-Script 使用的标题样式与标准类中的样式不同,因此如果想要旧的熟悉的外观,建议使用该选项加载类。)