将第一页的逻辑页码设置为零(显示在查看器中)

将第一页的逻辑页码设置为零(显示在查看器中)

我不是 LateX 专家,在撰写实习报告时遇到以下问题:

我的文档结构如下(MWE 在下面):

  1. 标题页(无编号)
  2. 目录(开始罗马数字)
  3. 第一部分(开始阿拉伯数字)

问题是,当使用 Adob​​e Reader 查看时,第一页(标题页)显示“1”,然后目录显示“i,ii...”... 我只希望(逻辑)编号像 0,i,ii,1,2,3... PDF 本身的编号是正确的。

我尝试使用该\setcounter{page}{0}命令,但无法正确执行。

我花了几个小时在互联网上,但没有找到答案,即使在这些(相关)问题中:如何更改 pdf 查看器中显示的页码?页码和逻辑页

这是我的结构(它应该在文章类中):

\documentclass[12pt, a4paper]{article}

\usepackage{fullpage}
\usepackage{hyperref}

\begin{document}

\newpage
\thispagestyle{empty}
\input{FrontPage} %it's a titlepage-environment

\newpage
\pagenumbering{roman}
\tableofcontents

\newpage
\pagenumbering{arabic}
\input{Introduction} %just plain text
\end{document}

提前致谢!Lennert

答案1

您需要放置\setcounter{page}{0} 里面环境titlepage,因为根据您的设置,默认文档类将计数器设置page为 0 或 1。


更具体地说,以下内容摘自article.cls

\if@compatibility
\newenvironment{titlepage}
    {%
      \if@twocolumn
        \@restonecoltrue\onecolumn
      \else
        \@restonecolfalse\newpage
      \fi
      \thispagestyle{empty}%
      \setcounter{page}\z@
    }%
    {\if@restonecol\twocolumn \else \newpage \fi
    }
\else
\newenvironment{titlepage}
    {%
      \if@twocolumn
        \@restonecoltrue\onecolumn
      \else
        \@restonecolfalse\newpage
      \fi
      \thispagestyle{empty}%
      \setcounter{page}\@ne
    }%
    {\if@restonecol\twocolumn \else \newpage \fi
     \if@twoside\else
        \setcounter{page}\@ne
     \fi
    }
\fi

如果你compatibility状况,则page计数器设置为 0(\z@),否则设置为 1(\@ne)。由于前者很少再使用,因此您必须重置page为 0里面环境titlepage

相关内容