\pagestyle 未按预期工作

\pagestyle 未按预期工作

我正在使用包,并使用命令为页面样式fancyhdr定义了页眉和页脚。我还使用相同的命令定义了一种新的页面样式。fancyfancypagestyletocstyle

按以下顺序定义:

\pagestyle{fancy}{%
    \def\footnotelayout{\color{darkgrey}}
    \renewcommand{\chaptermark}[1]{\markboth{#1}{}} % To change from all CAPS 
    \renewcommand{\sectionmark}[1]{\markright{#1}{}} % to normal case
    \fancyhf{}
    \fancyhead[RO]{\thechapter\ | \leftmark}
    \fancyhead[RE]{\textcolor{darkgrey}{Group 7}}
    \fancyhead[LO]{\textcolor{darkgrey}{P2 Report - CPR Teacher}}
    \fancyhead[LE]{\thesection\ | \rightmark}
    \fancyfoot[RE]{\footnotesize{\thepage\ \textsl{of} \pageref{LastPage}}}
    \fancyfoot[LO]{\footnotesize{\thepage\ \textsl{of} \pageref{LastPage}}}
}

\fancypagestyle{tocstyle}{%
    \fancyhf{}
    \renewcommand{\headrulewidth}{0pt}
    \fancyfoot[RE]{\footnotesize{\thepage}}
    \fancyfoot[LO]{\footnotesize{\thepage}}
}

在主 .tex 文件中,我使用 表示 ,tocstyle然后ToC更改为fancy,但它并没有应用fancy样式,而是看起来像是具有empty样式,页面完全是空的。

\documentclass[a4paper,11pt,titlepage,twoside,parskip=half-,bibliography=totoc]{scrreprt}
    \begin{document}
        \pagestyle{tocstyle}
        \tableofcontents
        \clearpage
        \pagestyle{fancy}

        \include{baForeword}
        \include{bIntroduction}
        ...
    \end{document}

答案1

错误在于

\pagestyle{fancy}{<your settings>}

\pagestyle命令只需要一个参数,因此括号中的以下文本实际上是成组执行的,并且在右括号后所有内容都会消失。

\def\footnotelayout{\color{darkgrey}}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}} % To change from all CAPS 
\renewcommand{\sectionmark}[1]{\markright{#1}{}} % to normal case

\fancypagestyle{bookstyle}{
\fancyhf{}
\fancyhead[RO]{\thechapter\ | \leftmark}
\fancyhead[RE]{\textcolor{darkgrey}{Group 7}}
\fancyhead[LO]{\textcolor{darkgrey}{P2 Report - CPR Teacher}}
\fancyhead[LE]{\thesection\ | \rightmark}
\fancyfoot[RE]{\footnotesize{\thepage\ \textsl{of} \pageref{LastPage}}}
\fancyfoot[LO]{\footnotesize{\thepage\ \textsl{of} \pageref{LastPage}}}
}
\fancypagestyle{tocstyle}{%
  \fancyhf{}
  \renewcommand{\headrulewidth}{0pt}
  \fancyfoot[RE]{\footnotesize{\thepage}}
  \fancyfoot[LO]{\footnotesize{\thepage}}
}

如果需要使用tocstyle目录的页面样式,请编写类似

\begin{document}
\frontmatter
...
\pagestyle{tocstyle}
\tableofcontents
\listoffigures
%\cleardoublepage

\mainmatter
\pagestyle{bookstyle}

...

应该\cleardoublepage添加以便准确标记页面样式之间的过渡;但是,如果\mainmatter紧跟在目录页之后,则没有必要,因为会自动\mainmatter出现问题\cleardoublepage

如果某个页面样式需要用于多个页面(使用\thispagestyle),则最好定义文档所需的所有页面样式。

相关内容