我正在用 class 编写文档report
。我希望前几页(即声明、摘要、致谢、目录、图表列表和表格列表)使用罗马页码,而主要内容使用阿拉伯页码。
我正在使用此命令来覆盖为书籍类别提供的\frontmatter
和命令。\mainmatter
\newcommand\frontmatter{%
\cleardoublepage
\@mainmatterfalse
\pagenumbering{roman}}
\newcommand\mainmatter{%
\cleardoublepage
\@mainmattertrue
\pagenumbering{arabic}}
\makeatother
这适用于目录、图表列表和表格列表。然而,由于摘要、致谢和声明均定义如下:
\renewcommand{\abstractname}{Name of this section}
\begin{abstract}
\end{abstract}
这些页面上没有显示页码。我尝试\thispagestyle{plain}
在这些部分中使用,但这导致每页都编号为 i。并且从 i 开始的计数从 toc 开始。
我怎样才能从声明开始以罗马格式进行页码编号?
答案1
您可以重新定义摘要:
\documentclass{report}
\newenvironment{multipleabstract}[1]
{\renewcommand{\abstractname}{#1}\begin{abstract}\thispagestyle{plain}}
{\end{abstract}}
\makeatletter
\renewenvironment{abstract}{%
\if@twocolumn
\section*{\abstractname}%
\else
\small
\begin{center}%
{\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
\end{center}%
\quotation
\fi}
{\if@twocolumn\else\endquotation\fi}
\makeatother
\begin{document}
\begin{multipleabstract}{Abstract1}
...
\end{multipleabstract}
\newpage
\begin{multipleabstract}{Abstract2}
...
\end{multipleabstract}
\end{document}