AKTUALISIEREN:

AKTUALISIEREN:

Ich stehe vor der Herausforderung, die Seitennummerierung im Vorspann meiner Abschlussarbeit anzupassen. Ich habe eine Musterarbeit heruntergeladen, dieHier, das die Klasse book als Grundlage für die neu definierte Klasse verwendet Thesis.cls. Um das unten stehende MWE zu kompilieren, benötigen Sie außerdem die Dateien vector.styund lstpatch.styaus dem von mir bereitgestellten Link (es sei denn, ich muss sie kopieren und in den Hauptteil meiner Frage einfügen). Wenn ich auf Details verzichte, sieht mein Klassendokument ungefähr so ​​aus:

\NeedsTeXFormat{LaTeX2e}[1996/12/01]
\ProvidesClass{Thesis}
              [2007/22/02 v1.0
   LaTeX document class]
\def\baseclass{book}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\baseclass}}
\def\@checkoptions#1#2{
  \edef\@curroptions{\@ptionlist{\@currname.\@currext}}
  \@tempswafalse
  \@tfor\@this:=#2\do{
    \@expandtwoargs\in@{,\@this,}{,\@curroptions,}
    \ifin@ \@tempswatrue \@break@tfor \fi}
  \let\@this\@empty
  \if@tempswa \else \PassOptionsToClass{#1}{\baseclass}\fi
}
\@checkoptions{11pt}{{10pt}{11pt}{12pt}}
\PassOptionsToClass{a4paper}{\baseclass}
\ProcessOptions\relax
\LoadClass{\baseclass}
\newcommand\bhrule{\typeout{------------------------------------------------------------------------------}}

\newcommand\Declaration[1]{
\btypeout{Approval of the Dissertation Committee}
\addtotoc{Approval of the Dissertation Committee}
\thispagestyle{plain}
\null\vfil
%\vskip 60\p@
\begin{center}{\huge\bf Approval of the Dissertation Committee\par}\end{center}
%\vskip 60\p@
{\normalsize #1}
\vfil\vfil\null
%\cleardoublepage
}

\newcommand\btypeout[1]{\bhrule\typeout{\space #1}\bhrule}
\def\today{\ifcase\month\or
  January\or February\or March\or April\or May\or June\or
  July\or August\or September\or October\or November\or December\fi
  \space \number\year}
\usepackage{setspace}
\onehalfspacing
\setlength{\parindent}{0pt}
\setlength{\parskip}{2.0ex plus0.5ex minus0.2ex}
\usepackage{vmargin}
\setmarginsrb           { 1.5in}  % left margin
                        { 0.6in}  % top margin
                        { 1.0in}  % right margin
                        { 0.8in}  % bottom margin
                        {  20pt}  % head height
                        {0.25in}  % head sep
                        {   9pt}  % foot height
                        { 0.3in}  % foot sep
\raggedbottom
\setlength{\topskip}{1\topskip \@plus 5\p@}
\doublehyphendemerits=10000       % No consecutive line hyphens.
\brokenpenalty=10000              % No broken words across columns/pages.
\widowpenalty=9999                % Almost no widows at bottom of page.
\clubpenalty=9999                 % Almost no orphans at top of page.
\interfootnotelinepenalty=9999    % Almost never break footnotes.
\usepackage{fancyhdr}
\lhead[\rm\thepage]{\fancyplain{}{\sl{\rightmark}}}
\rhead[\fancyplain{}{\sl{\leftmark}}]{\rm\thepage}
\chead{}\lfoot{}\rfoot{}\cfoot{}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\btypeout{\thechapter\space #1}\markboth{\@chapapp\ \thechapter\ #1}{\@chapapp\ \thechapter\ #1}}
\renewcommand{\sectionmark}[1]{}
\renewcommand{\subsectionmark}[1]{}
\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
\hbox{}
\thispagestyle{empty}
\newpage
\if@twocolumn\hbox{}\newpage\fi\fi\fi}
\usepackage{amsmath,amsfonts,amssymb,amscd,amsthm,xspace}
\theoremstyle{plain}
\newtheorem{example}{Example}[chapter]
\newtheorem{theorem}{Theorem}[chapter]
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{axiom}[theorem]{Axiom}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\theoremstyle{remark}
\newtheorem{remark}[theorem]{Remark}
\usepackage[centerlast,small,sc]{caption}
\setlength{\captionmargin}{20pt}
\newcommand{\fref}[1]{Figure~\ref{#1}}
\newcommand{\tref}[1]{Table~\ref{#1}}
\newcommand{\eref}[1]{Equation~\ref{#1}}
\newcommand{\cref}[1]{Chapter~\ref{#1}}
\newcommand{\sref}[1]{Section~\ref{#1}}
\newcommand{\aref}[1]{Appendix~\ref{#1}}
\renewcommand{\topfraction}{0.85}
\renewcommand{\bottomfraction}{.85}
\renewcommand{\textfraction}{0.1}
\renewcommand{\dbltopfraction}{.85}
\renewcommand{\floatpagefraction}{0.75}
\renewcommand{\dblfloatpagefraction}{.75}
\setcounter{topnumber}{9}
\setcounter{bottomnumber}{9}
\setcounter{totalnumber}{20}
\setcounter{dbltopnumber}{9}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage[scriptsize]{subfigure}
\usepackage{booktabs}
\usepackage{rotating}
\usepackage{listings}
\usepackage{lstpatch}
\lstset{captionpos=b,
        frame=tb,
        basicstyle=\scriptsize\ttfamily,
        showstringspaces=false,
        keepspaces=true}
\lstdefinestyle{matlab} {
        language=Matlab,
        keywordstyle=\color{blue},
        commentstyle=\color[rgb]{0.13,0.55,0.13}\em,
        stringstyle=\color[rgb]{0.7,0,0} }
\usepackage[pdfpagemode={UseOutlines},bookmarks=true,bookmarksopen=true,
   bookmarksopenlevel=0,bookmarksnumbered=true,hypertexnames=false,
   colorlinks,linkcolor={blue},citecolor={blue},urlcolor={red},
   pdfstartview={FitV},unicode,breaklinks=true]{hyperref}
\pdfstringdefDisableCommands{
   \let\\\space
}
\newcommand*{\supervisor}[1]{\def\supname{#1}}
\newcommand*{\examiner}[1]{\def\examname{#1}}
\newcommand*{\degree}[1]{\def\degreename{#1}}
\newcommand*{\authors}[1]{\def\authornames{#1}}
\newcommand*{\addresses}[1]{\def\addressnames{#1}}
\newcommand*{\university}[1]{\def\univname{#1}}
\newcommand*{\UNIVERSITY}[1]{\def\UNIVNAME{#1}}
\newcommand*{\department}[1]{\def\deptname{#1}}
\newcommand*{\DEPARTMENT}[1]{\def\DEPTNAME{#1}}
\newcommand*{\group}[1]{\def\groupname{#1}}
\newcommand*{\GROUP}[1]{\def\GROUPNAME{#1}}
\newcommand*{\faculty}[1]{\def\facname{#1}}
\newcommand*{\FACULTY}[1]{\def\FACNAME{#1}}
\newcommand*{\subject}[1]{\def\subjectname{#1}}
\newcommand*{\keywords}[1]{\def\keywordnames{#1}}
\supervisor  {Dr. Such and Such}
\examiner    {}
\degree      {}
\authors     {MEEE!!}
\university  {\texorpdfstring{\href{}
                {Real Good University}}
                {Real Good University}}
\UNIVERSITY  {\texorpdfstring{\href{}
                {REAL GOOD UNIVERSITY}}
                {REAL GOOD UNIVERSITY}}
\department  {\texorpdfstring{\href{}
                {Department of Fizzx}}
                {Department of Fizzx}}
\DEPARTMENT  {\texorpdfstring{\href{}
                {DEPARTMENT OF FIZZX}}
                {DEPARTMENT OF FIZZX}}
\group       {\texorpdfstring{\href{Research Group Web Site URL Here (include http://)}
                {Research Group Name}}
                {Research Group Name}}
\GROUP       {\texorpdfstring{\href{Research Group Web Site URL Here (include http://)}
                {RESEARCH GROUP NAME (IN BLOCK CAPITALS)}}
                {RESEARCH GROUP NAME (IN BLOCK CAPITALS)}}
\faculty     {\texorpdfstring{\href{Faculty Web Site URL Here (include http://)}
                {Faculty Name}}
                {Faculty Name}}
\FACULTY     {\texorpdfstring{\href{Faculty Web Site URL Here (include http://)}
                {FACULTY NAME (IN BLOCK CAPITALS)}}
                {FACULTY NAME (IN BLOCK CAPITALS)}}
\addresses   {}
\subject     {}
\keywords    {}
\renewcommand\maketitle{
  \btypeout{Title Page}
  \hypersetup{pdftitle={\@title}}
  \hypersetup{pdfsubject=\subjectname}
  \hypersetup{pdfauthor=\authornames}
  \hypersetup{pdfkeywords=\keywordnames}
  \thispagestyle{empty}
  \begin{titlepage}
    \let\footnotesize\small
    \let\footnoterule\relax
    \let \footnote \thanks
    \setcounter{footnote}{1}
    \null\vfil
    \vskip 60\p@
    \begin{center}
      \setlength{\parskip}{0pt}
      %{\large\textbf{Claremont Graduate University}\par}
      \vfill
      {\huge \bf \@title \par}
      \vfill
      {\LARGE by \par}
      \smallskip
      {\LARGE \authornames \par}
      \vfill
      {\large A thesis submitted in partial fulfillment for the \par}
      {\large degree of Doctor of Philosophy in Mathematics \par}
      \bigskip
      \bigskip
      {\large in the \par}
      %{\large \facname \par}
      {\large \deptname \par}
      {\large \univname \par}
      \bigskip
      \bigskip
      \bigskip
      {\Large \@date \par}
      \bigskip
    \end{center}
    \par
    \@thanks
    \vfil\null
  \end{titlepage}
  \setcounter{footnote}{0}%
  \global\let\thanks\relax
  \global\let\maketitle\relax
  \global\let\@thanks\@empty
  \global\let\@author\@empty
  \global\let\@date\@empty
  \global\let\@title\@empty
  \global\let\title\relax
  \global\let\author\relax
  \global\let\date\relax
  \global\let\and\relax
  \cleardoublepage
}
\newenvironment{abstract}
{
  \btypeout{Abstract Page}
  \thispagestyle{empty}
  \null\vfil
  \begin{center}
    \setlength{\parskip}{0pt}
{\huge{\textit{Abstract}} \par}
    \bigskip
    {\normalsize\bf A Pretty Decent(?) Thesis \par}
    \medskip
{\normalsize by \par}
    {\normalsize \authornames \par}
\bigskip
    {\normalsize \UNIVNAME : 2019 \par}
    \bigskip
   % {\normalsize \facname \par}
   % {\normalsize \deptname \par}
  %  \bigskip
 %   {\normalsize Doctor of Philosophy\par}
    %\bigskip
  \end{center}
}
{
  \vfil\vfil\vfil\null
  \cleardoublepage
}
\addtocounter{secnumdepth}{1}
\setcounter{tocdepth}{6}
\newcounter{dummy}
\newcommand\addtotoc[1]{
\refstepcounter{dummy}
\addcontentsline{toc}{chapter}{#1}}
\renewcommand\tableofcontents{
\btypeout{Table of Contents}
\begin{spacing}{1}{
    \setlength{\parskip}{1pt}
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\contentsname
        \@mkboth{
           \MakeUppercase\contentsname}{\MakeUppercase\contentsname}}
    \@starttoc{toc}
    \if@restonecol\twocolumn\fi
   \cleardoublepage
}\end{spacing}
}
\renewcommand\listoffigures{
\btypeout{List of Figures}
\addtotoc{List of Figures}
\begin{spacing}{1}{
    \setlength{\parskip}{1pt}
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\listfigurename
      \@mkboth{\MakeUppercase\listfigurename}
              {\MakeUppercase\listfigurename}}
    \@starttoc{lof}
    \if@restonecol\twocolumn\fi
    \cleardoublepage
}\end{spacing}
}
\renewcommand\listoftables{
\btypeout{List of Tables}
\addtotoc{List of Tables}
\begin{spacing}{1}{
    \setlength{\parskip}{1pt}
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\listtablename
      \@mkboth{
          \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}
    \@starttoc{lot}
    \if@restonecol\twocolumn\fi
    \cleardoublepage
}\end{spacing}
}
\newcommand\listsymbolname{Abbreviations}
\usepackage{longtable}
\newcommand\listofsymbols[2]{
\btypeout{\listsymbolname}
\addtotoc{\listsymbolname}
    \chapter*{\listsymbolname
      \@mkboth{
          \MakeUppercase\listsymbolname}{\MakeUppercase\listsymbolname}}
\begin{longtable}[c]{#1}#2\end{longtable}\par
    \cleardoublepage
}
\newcommand\listconstants{Physical Constants}
\usepackage{longtable}
\newcommand\listofconstants[2]{
\btypeout{\listconstants}
\addtotoc{\listconstants}
    \chapter*{\listconstants
      \@mkboth{
          \MakeUppercase\listconstants}{\MakeUppercase\listconstants}}
\begin{longtable}[c]{#1}#2\end{longtable}\par
    \cleardoublepage
}
\newcommand\listnomenclature{Symbols}
\usepackage{longtable}
\newcommand\listofnomenclature[2]{
\btypeout{\listnomenclature}
\addtotoc{\listnomenclature}
    \chapter*{\listnomenclature
      \@mkboth{
          \MakeUppercase\listnomenclature}{\MakeUppercase\listnomenclature}}
\begin{longtable}[c]{#1}#2\end{longtable}\par
    \cleardoublepage
}
\newcommand\acknowledgements[1]{
\btypeout{Acknowledgements}
\addtotoc{Acknowledgements}
\thispagestyle{plain}
\begin{center}{\huge{\textit{Acknowledgements}} \par}\end{center}
{\normalsize #1}
\vfil\vfil\null

}
\newcommand\dedicatory[1]{
\btypeout{Dedicatory}
\thispagestyle{plain}
\null\vfil
\vskip 60\p@
\begin{center}{\Large \sl #1}\end{center}
\vfil\null
\cleardoublepage
}
\renewcommand\backmatter{
  \if@openright
    \cleardoublepage
  \else
    \clearpage
  \fi
  \addtotoc{\bibname}
  \btypeout{\bibname}
  \@mainmatterfalse}
\endinput

Ich habe auch ein MWE zum Kompilieren beigefügt:

\documentclass[a4paper, 11pt, oneside]{Thesis}  
\begin{document}
\setstretch{1.3}  
\fancyhead{}  
\rhead{} %\thepage}  
\lhead{} 
\pagestyle{empty} 

\frontmatter     
\title  {A Pretty Decent(?) Thesis}
\authors  {Me}

\maketitle


%% ----------------------------------------------------------------
% The "Funny Quote Page"
\pagestyle{empty}  % No headers or footers for the following pages

\null\vfill

\begin{flushright}
Ha! A limerick\\
The bane of my existence\\
Thank goodness I'm done
\end{flushright}

\vfill\vfill\vfill\vfill\vfill\vfill\null
\clearpage  % Funny Quote page ended, start a new page

\addtotoc{Abstract}  % Add the "Abstract" page entry to the Contents
\abstract{
\addtocontents{toc}{\vspace{1em}}  
It's a pretty good thesis, I promise.
}
\clearpage

\setstretch{1.3}  

\pagestyle{fancy}
\acknowledgements{
\addtocontents{toc}{\vspace{1em}}

Thank you, I love you, Babye.
} 

\pagestyle{fancy}  
\lhead{\emph{Contents}}  
\tableofcontents  
\lhead{\emph{List of Figures}}  
\listoffigures  

\end{document}

Das Hauptproblem, das ich sehe, lässt sich anhand der vierten kompilierten Seite (den Danksagungen) verdeutlichen. Dort können wir sehen, dass dies die vierte Seite im Dokument ist, sie aber als Seite iii aufgeführt ist:

Die vierte Seite des Dokuments wird als Seite iii aufgeführt.

Ich möchte zwei Dinge:

  1. Ich möchte, dass die Nummerierung mit römischen Ziffern auf der Titelseite beginnt (d. h. die erste Seite des PDF sollte Seite i sein).
  2. Ich möchte nicht, dass die Nummerierung des Vorspanns erst im Abschnitt „Danksagungen“ sichtbar ist.

Mein MWE ist nicht perfekt, da die erste Seitenzahl im MWE auf der Danksagungsseite steht, während in meiner eigentlichen Dissertation die Seitenzahl iunten im Abstract abgedruckt ist. Ich bin nicht sicher, wie ich mein MWE umfassender gestalten kann, aber hoffentlich kann ich diese Probleme nacheinander, wenn nicht sogar gleichzeitig, lösen.

Antwort1

Okay, beginnen wir mit einem kompilierbaren Code, um Ihr Problem mit zu erklären fancyhdr.

Mit dem folgenden Code, der die Struktur Ihrer Abschlussarbeit simuliert

\documentclass[a4paper, 11pt, oneside]{book} 

\usepackage{fancyhdr}
\usepackage{blindtext}

\title{A Pretty Decent Thesis}
\author{username}


\begin{document}

\frontmatter 
%\pagestyle{empty} % <===================================================

\maketitle

\section*{Abstract}
\Blindtext

\tableofcontents

\listoffigures

\pagestyle{fancy} % <===================================================
\mainmatter
\chapter{Introduction}
\Blinddocument
\end{document}

Sie können sehen, dass die beiden Zeilen mit \pagestylewichtig sind. Wenn Sie den obigen Code kompilieren, erhalten Sie

resultierendes PDF

Dort sieht man zwei Dinge: Die Seitennummerierung wird angezeigt (weil die erste \pagestyle{empty}auskommentiert ist!) und zwar mit römischen Zahlen, wie man im roten Kreis unten sehen kann. Je nach verwendetem PDF-Viewer nummeriert der PDF-Viewer die Seiten komplett mit arabischen Zahlen (das passiert bei dir und bei mir). Das bedeutet, dass die ersten Seiten (im Druck bis mit römischen Zahlen nummeriert iv) mit arabischen Zahlen gezählt werden. Das sieht man auf der letzten Seite nach dem Kompilieren meines Codes. Die letzte Seite bekommt im Druck die Seitenzahl 20, wird im Viewer aber als Seite 25 gezählt. Dieses Verhalten hängt vom verwendeten Viewer ab. Soweit ich mich erinnere, zeigt Acrobat beispielsweise römische und arabische Zahlen an.

Entfernen Sie nun bitte das erste Kommentarzeichen \pagestyle{empty}. Jetzt fancyhdrwissen Sie, dass auf allen folgenden Seiten keine Kopf- und Fußzeilen angezeigt werden dürfen (bis \pagestyle{fancy}oder ein anderer Befehl wie „ \tableofcontentsverwendet Stil“ plaindie Standardkopf- und -fußzeile aktiviert, die fancyhdrich in diesem Beispielcode verwendet habe).

Nach dem Kompilieren erhalten Sie einige Seiten ohne Seitennummerierung, aber das Inhaltsverzeichnis zeigt immer noch die römische Seitennummerierung. Um das zu entfernen, müssen Sie aufrufen \thispagestyle{empty}, da der Befehl \tableofcontentsso erstellt wurde, dass er den plainvon uns nicht gewünschten Stil verwendet. Dasselbe könnte für passieren listoffigures!

Der folgende Code

\documentclass[a4paper, 11pt, oneside]{book} 

\usepackage{fancyhdr}
\usepackage{blindtext}

\title{A Pretty Decent Thesis}
\author{username}

\pagestyle{plain}{%
  \fancyhead{}
  \fancyfoot[c]{}
}


\begin{document}

\frontmatter 
\pagestyle{empty} % <===================================================

\maketitle
\pagestyle{empty}

\section*{Abstract}
\Blindtext

\tableofcontents
\thispagestyle{empty} % <==============================================

\listoffigures
\thispagestyle{empty} % <==============================================

\pagestyle{fancy} % <===================================================
\mainmatter
\chapter{Introduction}
\Blinddocument
\end{document}

gibt Ihnen keine Seitenzahlen im Vorspann, zeigt aber Seitenzahlen ab Kapitel 1 an:

Bildbeschreibung hier eingeben

Nun kannst du die hier erläuterten Befehle nutzen und in deiner Arbeit einsetzen, um die ungewollten Seitenzahlen loszuwerden.

Wenn Sie hyperrefIhren Code ladenes hängt vom verwendeten PDF-Viewer abwie die angezeigten Seiten nummeriert sind. In meinem Fall – ich verwende SumatraPDF – erhalte ich dann den folgenden Bildschirm:

Bildbeschreibung hier eingeben

Jetzt kann SumatraPDF anzeigen, dass wir uns auf Seite iii(oder 4 in arabischen Zahlen) befinden. Der Grund dafür ist, dass hyperrefdie Lesezeichen aktiviert sind, die diese Information enthalten.

AKTUALISIEREN:

Die von Ihnen verwendete Klasse weist einige Fehler auf und einer davon führt zu einer falschen Nummerierung der Seite nach dem Titelblatt, auf der Sie den Limerick hinzugefügt haben.

Um diesen Fehler zu beheben, fügen Sie bitte den folgenden Code in Ihre Präambel (vorher \begin{document}) ein, um eine neue Umgebung zu definieren, in der ich als Workaround die Seitenzahl explizit auf 2 gesetzt habe (siehe markierte Zeile <==========):

\newenvironment{funyquote}
{
  \btypeout{Funyquote Page}
  \thispagestyle{empty}
  \setcounter{page}{2}% <===============================================
  \null\vspace{3cm}
}
{
% \vfill\vfill\vfill\vfill\vfill\vfill\null
  \cleardoublepage
} 

Anschließend kannst Du \maketitleden folgenden Code hinzufügen, um Deine Seite mit Limerick zu versehen (natürlich den alten Code mit Limerick löschen!):

\clearpage
\funyquote{% <==========================================================
\begin{flushright}
Ha! A limerick\\
The bane of my existence\\
Thank goodness I'm done
\end{flushright}
} % <===================================================================
\clearpage  % Funny Quote page ended, start a new page

Dann erhalten Sie das Ergebnis:

korrigierte Seite Limerik

Ohne diese Korrektur erhalten Sie die falsche Seitenzahl, was zu dem von Ihnen beobachteten Problem führt:

falsche Seitennummerierung

Ich habe nicht untersucht, woher dieses Problem kommt (irgendwo im Code dieser Klasse vergraben), aber ich schlage vor, eine Standardklasse zu verwenden. Wer weiß, welche anderen Fehler noch auftreten werden ...

verwandte Informationen