嘿呀!
我需要将前几页添加到目录中,但不包含页码。我该如何实现?\listoffigures 和 \listoftables 会在目录中生成虚线和页码,我想删除它们。我搜索了很多问题,但总是找到删除目录中页码的答案,我已经这样做了。
我的目录应该是这样的:
ABSTRACT
LIST OF FIGURES
LIST OF TABLES
CONTENTS
CHAPTER 1...................................6
CHAPTER 2...................................7
最小工作示例:
% docmentclass
\documentclass[12pt]{article}
% table of contents package
\usepackage{tocloft}
% package to enable commands after pages
\usepackage{afterpage}
% dots to TOC
\AtBeginDocument{
\renewcommand{\cftsecleader}{\cftdotfill{\cftsecdotsep}}
\renewcommand\cftsecdotsep{\cftdot}
\renewcommand\cftsubsecdotsep{\cftdot}
\renewcommand{\cftfigleader}{\cftdotfill{\cftsecdotsep}}
\renewcommand{\cfttableader}{\cftdotfill{\cftsecdotsep}}
}
%remove incremental number from TOC
\let\oldsection\section
\newcommand{
\abstractsection}[1]{
\newpage
\oldsection*{#1}
\addcontentsline{toc}{section}{#1}
}
%for captions to show up in lof and lot
\usepackage{caption}
\begin{document}
%frontcover
\begin{center}
\vspace*{5cm}
\normalsize{Tuomas-Matti Soikkeli} \\
\large{Front Cover}
\vfill{}
\end{center}
%abstract
\abstractsection{ABSTRACT}
Some abstract content
\newpage
%list of figures and list of tables
\listoffigures
\addcontentsline{toc}{section}{LIST OF FIGURES}
\listoftables
\addcontentsline{toc}{section}{LIST OF TABLES}
\newpage
%ToC
\tableofcontents
\addcontentsline{toc}{section}{CONTENTS}
\newpage
%contents
\section{FIRST CHAPTER}
\begin{figure}[H]
figure
\caption[EXAMPLE FIGURE]{example figure}
\end{figure}
\section{SECOND CHAPTER}
\begin{table}[h]
table
\caption[EXAMPLE TABLE]{example table}
\end{table}
\end{document}
最终结果是:
答案1
您应该使用tocloft
。不要使用\addcontentsline{<file>}{<type>}{<title>}
,而要使用\cftaddtitleline{<file>}{<type>}{<title>}{<page>}
。使用后者允许您使用空<page>
参数:
\documentclass{article}
% Table of Contents package
\usepackage{tocloft}
% dots to TOC
\AtBeginDocument{
\renewcommand{\cftsecleader}{\cftdotfill{\cftsecdotsep}}
\renewcommand\cftsecdotsep{\cftdot}
\renewcommand\cftsubsecdotsep{\cftdot}
\renewcommand{\cftfigleader}{\cftdotfill{\cftsecdotsep}}
\renewcommand{\cfttableader}{\cftdotfill{\cftsecdotsep}}
}
%remove incremental number from TOC
\newcommand{\abstractsection}[1]{%
\clearpage
\section*{#1}
\cftaddtitleline{toc}{section}{#1}{}%
}
\begin{document}
\addtocontents{toc}{\protect\renewcommand{\protect\cftsecleader}{\hfill}}
%abstract
\abstractsection{ABSTRACT}
Some abstract content
\clearpage
% List of Figures and List of Tables
\listoffigures
\cftaddtitleline{toc}{section}{LIST OF FIGURES}{}%
\listoftables
\cftaddtitleline{toc}{section}{LIST OF TABLES}{}%
\clearpage
% Table of Contents
\tableofcontents
\cftaddtitleline{toc}{section}{CONTENTS}{}%
\clearpage
\addtocontents{toc}{\protect\renewcommand{\protect\cftsecleader}{\protect\cftdotfill{\protect\cftsecdotsep}}}
%contents
\section{FIRST CHAPTER}
\begin{figure}[ht]
figure
\caption[EXAMPLE FIGURE]{example figure}
\end{figure}
\section{SECOND CHAPTER}
\begin{table}[ht]
table
\caption[EXAMPLE TABLE]{example table}
\end{table}
\end{document}
此外,您必须(非常有策略性地)将条目插入 ToC 文件中以删除领导者。我已经这样做了,并在上面注释了这些位置。该.toc
文件现在应该类似于:
\renewcommand {\cftsecleader }{\hfill }
\contentsline {section}{ABSTRACT}{}
\contentsline {section}{LIST OF FIGURES}{}
\contentsline {section}{LIST OF TABLES}{}
\contentsline {section}{CONTENTS}{}
\renewcommand {\cftsecleader }{\cftdotfill {\cftsecdotsep }}
\contentsline {section}{\numberline {1}FIRST CHAPTER}{5}
\contentsline {section}{\numberline {2}SECOND CHAPTER}{5}
这种调整目录相关内容的方式是必要的,因为在设置文档的其余部分之前,目录是作为一个整体处理的。您必须在文档中插入与目录中的顺序相对应的调整。