我有一本使用回忆录的书的模板如下:
\documentclass[a5paper, 14pt]{memoir}
\usepackage{lipsum}
\begin{document}
\frontmatter
\chapter*{Nothing}
\chapter*{Nothing}
\clearpage
\begin{KeepFromToc}
\tableofcontents
\end{KeepFromToc}
\chapter{0-One}
\lipsum[2-10]
\chapter{1-Two}
\lipsum[2-10]
\mainmatter
\chapter{One}
\lipsum[2-10]
\chapter{Two}
\lipsum[2-10]
\end{document}
目录中的第一个条目是“0-One”,从上述 MWE 中的第 V 页开始。但是,我希望罗马数字在目录之后立即以 I 开头,即“0-One”应该是 I 而不是 V。
可以使用回忆录来做到这一点吗?
答案1
您可以添加第二个\frontmatter
命令,它将重置编号。您也不需要KeepFromToc
;\tableofcontents
只需使用\tableofcontents*
。要从初始页面中完全删除编号,您可以将chapter
页面样式别名为空,然后在目录之后恢复它。
\documentclass[a5paper, 14pt]{memoir}
\usepackage{lipsum}
\begin{document}
\frontmatter
\aliaspagestyle{chapter}{empty}
\chapter*{Nothing}
\chapter*{Nothing}
\clearpage
\tableofcontents*
\clearpage
\aliaspagestyle{chapter}{plain}
\frontmatter
\chapter{0-One}
\lipsum[2-10]
\chapter{1-Two}
\lipsum[2-10]
\mainmatter
\chapter{One}
\lipsum[2-10]
\chapter{Two}
\lipsum[2-10]
\end{document}
答案2
我建议\pagenumbering{alph}
在之前的部分使用\frontmatter
(添加时您就会知道为什么hyperref
)。使用组后,对页面样式所做的更改将在组结束后立即被遗忘。
\documentclass[a5paper, 14pt]{memoir}
\usepackage{lipsum}
\begin{document}
\pagenumbering{alph}
\begingroup
\pagestyle{empty}
\aliaspagestyle{chapter}{empty}
\chapter*{Nothing}
\chapter*{Nothing}
\endgroup
\frontmatter
\pagestyle{headings}
\aliaspagestyle{chapter}{plain}
\tableofcontents*
\chapter{0-One}
\lipsum[2-10]
\chapter{1-Two}
\lipsum[2-10]
\mainmatter
\chapter{One}
\lipsum[2-10]
\chapter{Two}
\lipsum[2-10]
\end{document}
解释
使用页码roman
或arabic
,hyperref
就会出现问题,因为不止一页会获得相同的内部引用,而该引用是使用页码构建的。任何其他页码模型都可以,或 也Roman
可以。或者,人们可以更新在阿拉伯数字前添加前缀Alph
的定义。\thepage
该组通常不建议用于普通章节,它将使页面样式的重新定义保持本地化。在这些“前章”中,您可能会有与您所在机构的官僚机构相关的材料,例如委员会名称和声明,因此没有交叉引用或其他可能影响记忆的内容。在 时\endgroup
,重新定义将消失,因此不需要恢复您可能在文档序言中随意定义的正常页面样式。