在Table of Contents
我只得到numbers
,但我还想得到prefix
。如何Chapter
在目录中每个章节标题的数字前添加单词“ ”?
目前看起来是这样的:
Contents
1 Introduction
2 Microbiology
3 Electric Properties
我希望它看起来像这样:
Contents
Chapter 1: Introduction
Chapter 2: Microbiology
Chapter 3: Electric Properties
中的代码main.tex
如下(我还有其他 3 个.tex
文件,分别名为Chapter_1
、Chapte_2
和Chapter_3
,我在主文件中调用它们):
\documentclass[twoside, a4paper, 11pt]{article}
\renewcommand{\baselinestretch}{1.2}
\usepackage[top=2.5cm, left=2.5cm, right=2.5cm, bottom=2.5cm, headheight=1.25cm, footskip=1.25cm, margin=1in]{geometry}
\usepackage[english]{babel}
\usepackage{fontspec}
\setmainfont{Times New Roman}
\usepackage{appendix}
\usepackage{titlesec}
\titleformat{\section}
{\normalfont\LARGE\bfseries}{Chapter~\thesection :}{1em}{}
\usepackage{tocbasic}
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{\figurename},
dynnumwidth,
numsep=1em
]{tocline}{figure}
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{\tablename},
dynnumwidth,
numsep=1em
]{tocline}{table}
\newcommand\entrynumberwithprefix[2]{#1\enspace#2:\hfill}
\usepackage{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=black,
citecolor=black,
filecolor=black,
urlcolor=black,
}
\urlstyle{same}
\begin{document}
\tableofcontents
\clearpage
\section{Introduction}
\input{Chapter_1}
\clearpage
\section{Microbiology}
\input{Chapter_2}
\clearpage
\section{Electric Properties}
\input{Chapter_3}
\clearpage
\appendix
\titleformat{\section}
{\normalfont\large\bfseries}{APPENDIX A:}{1em}{}
\section{FIRST EXAMPLE OF APPENDIX}
\end{document}
P.S. 1:
我将其用作XeLaTeX
编译器和Overleaf
编辑器。
P.S. 2:
我只是tocbasic
为了让您看到我是如何使用它在目录中插入表格和图形的标签。
P.S. 3:
我还包括了hyperref
等等,以便您了解真实文档的基本结构,如果这是一个错误,请您原谅我。
P.S. 4:
我希望 也是相同的appendices
,但我认为它是具有不同变量的相同命令。
P.S. 5:
一般问题。您知道目录的名称是“目录”还是“目录表”更正确吗?因为我已经多次见过这两种名称,但我不知道该用哪个。是论文名称还是书籍名称。
答案1
恕我直言,你想要的是类似这样的东西:
\documentclass[numbers=noenddot,listof=totoc]{scrbook}
\usepackage[onehalfspacing]{setspace}% instead of \renewcommand{\baselinestretch}{1.2}
\usepackage[top=2.5cm, left=2.5cm, right=2.5cm, bottom=2.5cm, headheight=1.25cm, footskip=1.25cm, margin=1in]{geometry}
\usepackage[english]{babel}
\usepackage{newtxmath,newtxtext}% instead of
% \usepackage{fontspec}\setmainfont{Times New
% Roman}
\renewcommand*{\chapterformat}{\chapapp~\thechapter:\enskip}
\renewcommand*{\chaptermarkformat}{\chapapp~\thechapter:\enskip}
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{\figurename},
dynnumwidth,
numsep=1em
]{default}{figure}
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{\tablename},
dynnumwidth,
numsep=1em
]{default}{table}
\newcommand\entrynumberwithprefix[2]{#1\enspace#2:\hfill}
\RedeclareSectionCommand[
tocentrynumberformat=\entrynumberwithprefix{\chapapp},
tocdynnumwidth,
tocnumsep=1em,
beforeskip=0pt,
afterindent=false,
]{chapter}
\usepackage{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=black,
citecolor=black,
filecolor=black,
urlcolor=black,
}
\urlstyle{same}
\usepackage{mwe}% for dummy text, images etc.
\AddToHook{cmd/appendix/after}{%
\addtocontents{toc}{\string\def\string\chapapp{\chapapp}}%
}
\begin{document}
\tableofcontents
\blinddocument
\appendix
\blinddocument
\end{document}
顺便说一句:使用 KOMA-Script 类而不是标准类还可以为图表列表和表格列表中的数字前缀提供另一种选择。
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{\figurename},
dynnumwidth,
numsep=1em
]{default}{figure}
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{\tablename},
dynnumwidth,
numsep=1em
]{default}{table}
您可以添加类选项listof=entryprefix
。这已经激活了数字前的“图形”和“表格”。要在数字后添加“:”,您可以在文档序言中使用这两行。
\BeforeStartingTOC[lof]{\let\autodot:}
\BeforeStartingTOC[lot]{\let\autodot:}
有关使用的类选项以及使用更改章节标题和章节条目到目录\RedeclareSectionCommand
或更改页眉和页脚(使用类选项或 KOMA-Script 包scrlayer-scrpage
)的更多信息,请参阅英语或德语KOMA 脚本手动的。
另一种方法是使用scrreprt
with optiontwoside
而不是scrbook
。使用scrbook
附加选项open=any
可能会很有趣。 和 的其他几个功能scrbook
也scrreprt
可能很有用。因此,建议阅读手册 — — 不是一次全部读完,而是每天读几页,每当您需要附加功能时再读 — —。
有关如何使用 KOMA-Script 类和 KOMA-Script 包进行更改的详细问题,请参阅几个KOMA-Script 问题和答案(以及手册)或询问新的提出适当的最少问题在职的例子。