我的文档中有很长的章节标题,因此目录中的标题无法放在一行中。我有两个问题:
- 当第二行开始时,我需要将其向右缩进一点,但我不知道该怎么做。
- 当章节标题太长而无法在一行中容纳时,该行会一直延伸到页码的边缘。我需要在页码框之前切断这一行,留下这个空白处并继续第二行。
以下是一个例子:
\documentclass[12pt]{report}
\usepackage{styles/fbe_tez}
\begin{document}
\tableofcontents
\chapter{FORMAT OF DISKETTES/CD CONTAINING COMPUTER SOFTWARE}
Some text here
\section{Table of Contents, List of Figures, List of Tables and List of Symbols/Abbreviations}
Some more text
\end{document}
样式包已提供给我,这里是与目录相关的部分。
%
% Table of Contents
%
\renewcommand\contentsname{TABLE OF CONTENTS}
\renewcommand\tableofcontents{% \ev is used for temporary storage of \parskip
\newlength\ev
\setlength{\ev}{\parskip}
\parskip0pt
% A line as 'TABLE OF CONTENTS' must not appear in the
% Table of Contents. Hence we reproduce the \chapter* here except that
% no entry is put into the toc file.
\clearpage \global\@topnum\z@
\@afterindenttrue
\begin{center}
{ \normalfont
\interlinepenalty\@M
\large \bfseries \contentsname\par\nobreak
\vskip21pt \vskip0.8\baselineskip
}\end{center}
\@afterheading
\@starttoc{toc}%
\parskip\ev}
%
% FBE style TOC does not have bold lines.
\renewcommand\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\setlength\@tempdima{1.5em}%
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode
\advance\leftskip\@tempdima
\hskip -\leftskip
#1\nobreak\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep
mu$}\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
%
% The spacing of the TOC lines has been redefined.
\renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.em}}
\renewcommand*\l@subsection{\@dottedtocline{2}{3.8em}{2.9em}}
\renewcommand*\l@subsubsection{\@dottedtocline{3}{7em}{3.8em}}
\renewcommand*\l@paragraph{\@dottedtocline{4}{11.1em}{4.7em}}
\renewcommand*\l@subparagraph{\@dottedtocline{5}{16.1em}{5.7em}}
答案1
答案2
如果没有一个完整的示例(除了其他信息外)至少可以显示您正在使用的类,那么您的第一个问题就无法得到有意义的回答。关于您的第二个问题,我的水晶球告诉我您应该使用 hyperref 和选项 linktocpage。另请参阅https://texfaq.org/FAQ-breaklinks