ERDC 报告的标题中未显示乳胶标记

ERDC 报告的标题中未显示乳胶标记

我正在使用 erdc(覆盖 mathgifg 字体的修改版本)。我想更改报告的标题,以便它在内侧显示报告编号,在外侧显示章节标题,在外侧页脚显示页码。

以下是我尝试的简短示例代码(见下文)。但是,我遇到了一些问题:

  1. \rightmark 不起作用,它什么也没打印。甚至在 \mainmatter 之外也是如此,正如 fancyhdr 手册所建议的那样。
  2. 如果我包含 \reportnum,我会得到很多错误。在此示例中,该语句被注释掉。

我错过了什么?请提供你的建议。

\documentclass{erdcx}
\usepackage[T1]{fontenc}
\usepackage{mathptmx}
\usepackage{bera}
\usepackage{fancyhdr}
\usepackage{blindtext}
%%% FORMAT OF HEADING
    \pagestyle{fancy}
    \fancyhf{}
%       \fancyhead[RE,LO]{\textsf{{\footnotesize\reportnum}}} %inner header
    \fancyhead[LE,RO]{\textsf{{\footnotesize\rightmark}}} %outter header
    \fancyfoot[LE,RO]{\textsf{{\footnotesize\thepage}}}   %outter footer

\begin{document}
%       \mainmatter
    \chapter{Primo}
    \thispagestyle{plain} 
    \Blindtext

    \chapter{Secondo} 
    \thispagestyle{plain}
    \blindtext
    \blindmathpaper

    \chapter{Terzo}
    \Blindtext

\end{document}

我也尝试将以下内容添加到序言中,但没有成功。

\renewcommand{\chaptermark}[1]{\markboth{\MakeUppercase{#1}}{}}

答案1

该类erdc定义\@chapter 不是发射\chaptermark,因此没有发现任何标记。

\def\@chapter[#1]#2{%
  \if@frontmatter
      \addcontentsline{toc}{chapter}{#1}%
      \@makechapterhead{#2}%
  \else
      \refstepcounter{chapter}%
      \typeout{\@chapapp\space\thechapter.}%
      \if@appendix
         \addcontentsline{toc}{chapter}%
             {\@chapapp\space\thechapter: #1}%
         \@makechapterhead{\@chapapp\space\thechapter: #2}%
      \else
         \addcontentsline{toc}{chapter}%
             {\protect\numberline{\thechapter}#1}%
         \@makechapterhead{\makebox[35\p@]{\thechapter\hfill}#2}%
      \fi
  \fi
  \@afterheading}

这是它的补丁。

% don't load mathgifg (does not exist)
\expandafter\def\csname [email protected]\endcsname{}
%%%

\documentclass{erdc}
\usepackage[T1]{fontenc}
\usepackage[latin]{babel} % latin just to avoid overfull boxes
\usepackage{bera}
\usepackage{etoolbox}

%\usepackage{fancyhdr}% not needed
\usepackage{blindtext}

%%% FORMAT OF HEADING
%\pagestyle{fancy} % not needed
\fancyhf{}
\makeatletter
\fancyhead[RE,LO]{\textsf{{\footnotesize\@reportnum}}} %inner header
\makeatother
\fancyhead[LE,RO]{\textsf{{\footnotesize\leftmark}}} %outer header
\fancyfoot[LE,RO]{\textsf{{\footnotesize\thepage}}}  %outer footer
\setlength{\headheight}{16pt}

% patch \@chapter to emit \chaptermark
\makeatletter
\patchcmd{\@chapter}{\fi\fi}{\fi\chaptermark{#1}\fi}{}{}
\makeatother


\begin{document}

\mainmatter

\chapter{Primo}
\thispagestyle{plain}

\Blindtext

\chapter{Secondo} 
\thispagestyle{plain}

\blindtext
\blindmathpaper

\chapter{Terzo}
\thispagestyle{plain}

\Blindtext

\end{document}

enter image description here

相关内容