我对 感到困惑fancyhdr
。让我们考虑这个最小的例子:
\documentclass{book}
\usepackage{fancyhdr}
\usepackage{lipsum}
\pagestyle{fancy}
\begin{document}
\frontmatter
\title{A dummy document}
\author{John Doe}
\maketitle
\tableofcontents
\section{Abstract}
\lipsum{2}
\mainmatter
\chapter{Foo}
\section{Neo}
\lipsum{8-12}
\section{Trinity}
\lipsum{13-20}
\chapter{Bar}
\section{Morpheus}
\lipsum{21-25}
\backmatter
\section{Appendix}
\lipsum{26}
\end{document}
我可以注意到不同的页眉/页脚样式:
- 空(标题页)
- 无页眉 + 标题行 + 罗马字体页码(标题页后)
- 没有罗马字体的页眉 + 页码(带目录的页面)
- 页眉 + 页码采用罗马字体(其他页面在前言中)
- 没有阿拉伯语页眉 + 页码(章节页面)
- 页眉 + 阿拉伯语页码(主要内容中的其他页面)
我不太理解 (2) 和 (3)。我该如何配置所有这些不同的配置?
如果我添加以下内容,它不会影响标题页、章节页和编号类型:
\fancyhead{}
\fancyhead[CE]{Even}
\fancyhead[CO]{Odd}
如何配置 fancyhdr 来:
- 删除空白页上的页眉/页脚吗?
- 在章节页面上配置页眉/页脚?
- 在其他页面上配置页眉/页脚?
答案1
删除空白页上的页眉和页脚
第一个问题不是关于fancyhdr
的行为\cleardoblepage
。为了删除空白页上的页眉和页脚,我在序言中使用了以下代码:
\makeatletter
\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
\vspace*{\fill}
\thispagestyle{empty}
\newpage
\if@twocolumn\hbox{}\newpage\fi\fi\fi}
\makeatother
配置章节页面上的页眉和页脚
\chapter
将页面样式默认重置为纯色。如果您想要更改此页面的样式,请尝试:
\chapter{Foo}
\thispagestyle{fancy}
其他页面的页眉和页脚
如何修改其他页面的页眉和页脚的示例:
\pagestyle{fancy}
\fancyhf{} %clear headers and footers
\fancyhead[LE,RO]{\thepage} %page number on the left on even pages and the right of odd pages
\fancyhead[CO]{\leftmark} %chapter name in the center of odd pages
\fancyhead[CE]{\rightmark} %section title in the center of even pages
\renewcommand{\headrulewidth}{0pt} %rule width