防止前言重置计数

防止前言重置计数

我想在整个文档中保持相同的编号。但是frontmattermainmatter正在重置编号。我该如何防止这种情况?

\documentclass[oneside,12pt]{book}     
\usepackage[french]{babel} 
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc} 
\begin{document}
\frontmatter
Some text here.
\mainmatter
\chapter{chapter1}
\chapter{chapter2}
\chapter{chapter3}
\chapter{chapter4}
\backmatter
\chapter{annexe}
\end{document}

答案1

最简洁的方法是重新定义命令:添加

\makeatletter
\renewcommand\frontmatter{%
  \cleardoublepage
  \@mainmatterfalse
  %\pagenumbering{roman}% Don't reset
}
\renewcommand\mainmatter{%
  \cleardoublepage
  \@mainmattertrue
  %\pagenumbering{arabic}% Don't reset
}
\makeatother

\begin{document}

如您所见,\pagenumbering按照另一个答案的建议,重新定义为不执行任何操作是可行的。但也许有人会要求您以不同的方式对附录进行编号……

答案2

标记命令\frontmatter\mainmatter用于\pagenumbering更改数字样式并重置页码。可以将其重新定义为不执行任何操作:

\renewcommand*{\pagenumbering}[1]{}

答案3

如果您想保留罗马数字与阿拉伯数字\frontmatter\mainmatter实现,那么您可以执行以下操作。

\makeatletter
\renewcommand\mainmatter{
    \@mainmattertrue\cleardoublepage\renewcommand\thepage{\arabic{page}}}
\makeatother

如果您希望始终使用阿拉伯数字,那么 egreg 的答案就可以了。

相关内容