![TOC 多行章节标题错位](https://linux22.com/image/371316/TOC%20%E5%A4%9A%E8%A1%8C%E7%AB%A0%E8%8A%82%E6%A0%87%E9%A2%98%E9%94%99%E4%BD%8D.png)
后面有一个多余的空格第1章:
我不想要多余的空间。此外,目录中的所有多行章节、节和小节都应正确对齐,即第二行、第三行(等等)应与第一行完全对齐(删除第一行中的空格后)。在我的情况下,第二行和第三行对齐正确,但第一行对齐不正确。请注意,附录中有多余的空格(后 :) 我也不需要。
非常感谢您的任何帮助。
我正在使用以下代码来实现(在 USC-Thesis 类文件中)ToC 设置:
\newlength\mylenprt %part
\newlength\mylenchp %chp
\newlength\mylenapp %app
\newlength\mylena %fig
\newlength\mylenb %tab
\renewcommand\cftpartpresnum{\partname~}
\renewcommand\cftchappresnum{\chaptername~}
\renewcommand\cftfigpresnum{\figurename~}
\renewcommand\cfttabpresnum{\tablename~}
\renewcommand\cftchapaftersnum{:}
\renewcommand{\cftfigaftersnum}{:}
\renewcommand{\cfttabaftersnum}{:}
\settowidth\mylenprt{\cftpartfont\cftpartpresnum\cftpartaftersnum}
\settowidth\mylenchp{\cftchapfont\cftchappresnum\cftchapaftersnum}
\settowidth\mylenapp{\cftchapfont\appendixname~\cftchapaftersnum}
\settowidth\mylena{\cftfigfont\figurename~\cftfigaftersnum}
\settowidth\mylenb{\cfttabfont\tablename~\cfttabaftersnum}
\addtolength\mylenprt{\cftpartnumwidth}
\addtolength\mylenchp{\cftchapnumwidth}
\addtolength\mylenapp{\cftchapnumwidth}
\addtolength\cftfignumwidth{\mylena}
\addtolength\cfttabnumwidth{\mylenb}
\setlength\cftpartnumwidth{\mylenprt}
\setlength\cftchapnumwidth{\mylenchp}
\setlength\cftbeforefigskip{30pt}
下面是我的最小示例:
\documentclass[final]{USC-Thesis}
\usepackage[titles]{tocloft}
\usepackage[lofdepth,lotdepth]{subfig}
\usepackage{appendix} %[titletoc]
\renewcommand{\cftchapfont}{
\bfseries %\normalfont
}
\renewcommand{\cftchappagefont}{%
\bfseries %\normalfont
}
\begin{document}
\renewcommand{\contentsname}{Table of Contents}
\tableofcontents
\mainmatter
\chapter{This is a super long chapter heading that requires more than one
line in the Table of Contents. It can go more than 3 lines.}
\section{Section I}
\subsection{This is a super long chapter heading that requires more than one
line in the Table of Contents. It can go more than 3 lines Section II}
\subsection{Section III}
\subsubsection{Subsection I}
\appendix
\addtocontents{toc}{% NB!!! must be inside the first \include
\protect\renewcommand\protect\cftchappresnum{\appendixname~}%
\protect\setlength{\cftchapnumwidth}{\mylenapp} \protect\newpage
}%
\noappendicestocpagenum
\addappheadtotoc
\chapter{Some title 1}
\chapter{Some title 2}
\chapter{Some title 3}
\end{document}
答案1
我认为您的 MWE 中至少存在两个问题。
}
首先,你的标题末尾缺少一个\chapter
。
其次你定义:
\renewcommand{\cftchapfont}{
\bfseries
}
而它应该是
\renewcommand{\cftchapfont}{%
\bfseries
}
这将消除章节冒号和标题开头之间的多余空格。