序幕:
“现在的情况是这样的,[下一个是如何]我想要这个:“”
示例取自 2007 年 latex.org 上的这个问题:从目录中删除页码
% Current
Page 1 - Table of contents
Page 2 - Introduction
...
% Expected
Table of contents
Page 1 - Introduction
...
问题案例:
- 比如说,我正在按章节编写文档。因此,编写一个章节,打印出来 - 提交,然后重复编写其他章节。[正式机构中的项目/论文提交]
- 现在,由于只有几章,目录只有一页,编号为 1。章节编号从 2 开始。
- 随着时间的推移,目录会变得很长,跨越多页,现在我过去提交的页码与我的文档不一致。最终要提交的目录(当然)也会不一致。
细节:
因此,在LaTeX2e <2022-06-01> patch level 5
之前和之后,
- 在页码开头加入目录的理由是什么?
- 实现这一点的步骤(见下文)更像是单独处理元素,类似于 MS Office 等所见即所得的编辑器
- 考虑到 LaTeX 背后的哲学思想 - 主要是开箱即用的美观格式,以及定义文档的结构,这似乎并不适合。
- 因此,我要么错过了更好的方法来实现此目的:
- 比如说,如果有一些高级命令明确宣布不同类型的编号的开始,即执行上述所有操作 - 终止先前的编号,重新设置计数器,并按照指定的方式开始新的编号样式
- 这类似于
\appendix
对章节编号执行的所有操作
- 或者如果这是唯一的方法,那么我想知道背后的原因/理由。
实现此目的的步骤:
\documentclass[12pt,a4paper,oneside,titlepage]{report}
\renewcommand*\rmdefault{ptm}
\begin{document}
% Change style of or Remove page numbering to avoid ambiguity
\pagenumbering{roman}
\tableofcontents
% \thispagestyle{empty}
% The counter doesn't seem to reset without this command
\clearpage
% Set p-no. style back to Indo-Arabic
\pagenumbering{arabic}
% Reset the page counter
\setcounter{page}{1}
\chapter{Introduction}
...
\appendix
\chapter{A}
\end{document}
答案1
请注意,你让事情变得比需要的更复杂
\pagenumbering{arabic}
% Reset the page counter
\setcounter{page}{1}
您只需
\pagenumbering{arabic}
因为这已经重置了计数器。
在report
课堂上,这就是预期的标记。
在课堂上,book
您可以使用\frontmatter
...... 来为您完成这项工作。\mainmatter
\backmatter
article
并且report
无法自动更改目录后的页码,因为它们通常与文本位于同一页面上,并且图表、献词等列表通常也需要采用相同的数字序列。
即使对于书籍,大多数(但不是全部)乳胶工作流程都意味着传统的要求将前言放在单独的数字序列中并不适用。在前数字时代,在目录中添加额外的页面并重新编号书中的每一页将是一笔难以想象的成本,但使用乳胶,通常只需再运行一次乳胶,页码引用就会重新同步。因此,大多数情况下,使用罗马字体作为前言并使用阿拉伯字体作为正文的习惯只是对传统的认可,而不是技术上的必要性。
答案2
谢谢大家,请不要删除您对这个问题的评论,它们帮助我在这个方向上更多地思考这个问题。
- 浏览文档时,我已经发现了这些
\frontmatter
\mainmatter
命令(Ulrike 在评论中提到过),但不知道它们不在报告类中,我在报告类中尝试过它们,但没有成功,然后又把它混淆了,认为它\preamble
不是命令。无论如何……
如果有一些高级命令明确宣布不同类型的编号的开始,即执行上述所有操作 - 终止以前的编号,重新设置计数器,并按照指定的方式开始新的编号样式
- 因此,我想出了以下方法来实现这一目标,至少到目前为止,它似乎效果很好:
- 不过,我不知道这是否是正确的方法,或者会产生什么副作用。
\documentclass[12pt,a4paper,oneside,titlepage]{report}
\renewcommand*\rmdefault{ptm}
% **Definition:**
% \newpageseries[<start at 1>]{<style>}
\newcommand{\newpageseries}[2][1]{%
\clearpage
\pagenumbering{#2}
% \setcounter{page}{#1} % Uncomment this optionally
}
\begin{document}
% **Calling/Usage:**
\newpageseries{roman}
\tableofcontents
\newpageseries{arabic}
\chapter{Introduction}
\end{document}