右对齐页码 - 使用 fancyhdr 和 \AtBeginShipoutNext 时出现问题

右对齐页码 - 使用 fancyhdr 和 \AtBeginShipoutNext 时出现问题

我尝试了很多方法,但似乎都没有用。我只想在内容页之后右对齐页面。我还不断在封面页上方出现一条我不需要的线。代码简洁吗?这是代码:

\documentclass[15pt, a4paper, notitlepage]{article}
\usepackage{graphicx}
\usepackage{color}
\usepackage{fancyhdr}
\usepackage{float}
\usepackage{atbegshi}
\floatstyle{plaintop}
\restylefloat{table}
\usepackage[tableposition=top]{caption}
\usepackage{geometry}
    \geometry{
        a4paper,
        total={170mm,257mm},
        left=20mm,
        top=20mm,
    }

\pagestyle{fancy}
\fancyhf{}
    \fancyfoot[R]{\thepage}

\AtBeginDocument{%
  \rfoot{Report 1}%report number
  \AtBeginShipoutNext{%
    \rfoot{}%
  }%
  \lfoot{\today}%
  \AtBeginShipoutNext{%
    \lfoot{}%
  }%
}


\begin{document}

    % cover page

    \begin{figure}[H]
        \centering
        \includegraphics[width=150mm] {logo.png}
    \end{figure}

    \begin{center}
        \centering
        \centerline{\LARGE{\textbf{Stuff}}}
    \end{center}

    \vspace{125mm} % add white space

    \begin{center}
        \centering
        \centerline{\textnormal{stuff}}
        \vspace{10mm}
    \end{center}

    \pagenumbering{gobble}

    \pagebreak



    % content page
    \clearpage
    \pagenumbering{arabic}
    \lhead{Stuff Report}
    \rhead{\today} 

    \begin{center}
        \textbf{Table of Contents}
    \end{center}
    \begin{enumerate}
        \item[1.0]{Summary}

        \item[2.0]{Update}

    \end{enumerate}

    \newpage



    % body

    % \section{Executive Summary}
    % \section{Update}


\end{document}

答案1

可能有更好的解决方案,但这应该是一个很好的起点。我仍然对具有不同标题的目录页面感到困惑,但我希望我按照你的意愿做了。你应该从中得到一个大致的想法。

只是

  1. 不要同时使用\centering\centerline和,如果单独使用它们就足够了,那么它们一起做什么?{center}

  2. \LARGE是一个开关,而不是一个带参数的宏。

  3. 15pt类中没有类似选项的东西article。有10pt11pt12pt,就是这样。如果您需要15pt正常字体大小,那么您要么是在为视力不佳的人创作作品,要么就是在做非常错误的事情。

  4. 不要使用 shipout 的东西来格式化页眉和页脚,当你决定使用 时fancyhdr,只使用它的界面,不要使用其他任何东西。它解释得很好在其手册中

  5. 您的代码仍需要进行一些清理,但我现在无法做到这一点。


\documentclass[a4paper]{article}
\usepackage{graphicx}
\usepackage{color}
\usepackage{fancyhdr}
\usepackage{float}
\usepackage{atbegshi}
\floatstyle{plaintop}
\restylefloat{table}
\usepackage[tableposition=top]{caption}
\usepackage{geometry}
    \geometry{
        a4paper,
        total={170mm,257mm},
        left=20mm,
        top=20mm,
    }

% the general pagestyle
\pagestyle{fancy}
\fancyhf{}
\fancyfoot[R]{\thepage}

% pagestyle for the ToC page
\fancypagestyle{tocpage}{
    \fancyhf{}
    \renewcommand*\headrulewidth{0pt}
    \fancyfoot[R]{Report 1}
    \fancyhead[R]{Stuff Report}
    \fancyhead[L]{\today}
}


\begin{document}

    % cover page

    \thispagestyle{empty}

    \begin{center}

    \includegraphics[width=150mm]{logo.png}

    \bigskip

    {\LARGE\bfseries Stuff}

    \vspace{125mm} % add white space

    stuff

    \end{center}



    \clearpage
    % content page
    \pagenumbering{arabic}
    \thispagestyle{tocpage}

    \tableofcontents

    \newpage


\section{Here we go}

Blablabla

\end{document}

相关内容