页眉、页脚与页码
页码由页面样式控制;需要自定义页眉和页脚时使用 fancyhdr。先清空默认内容,再明确设置左右页的文本和页码,避免与文档类的预设样式叠加。
EasyLaTeX 编译器设置:XeLaTeX + ctex;示例需要 fancyhdr。论文或出版社模板往往已有专用页眉页脚命令,应优先使用模板接口。
选择页面样式
常用内置样式包括 plain、empty 和 headings:
\pagestyle{plain} % 通常只显示页码
\thispagestyle{empty} % 当前页不显示页眉页脚
\pagestyle 影响后续页面,\thispagestyle 只影响当前页。标题页、封面和某些章节首页常需要单独选择样式。
设置基本页眉和页脚
先加载宏包、启用 fancy 样式并清空已有定义:
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{项目名称}
\fancyhead[R]{\leftmark}
\fancyfoot[C]{\thepage}
\thepage 输出当前页码。\leftmark 在常见章节类中代表当前章或节标题,具体内容取决于文档类。
双面文档的左右页
双面书籍或论文可用 LE、RO 等位置区分偶数页和奇数页:
\fancyhead[LE]{\thepage}
\fancyhead[RO]{\thepage}
\fancyhead[LO]{\rightmark}
\fancyhead[RE]{\leftmark}
L/R 表示页面左/右,E/O 表示偶/奇页。只有启用双面排版时,这种设置才有实际意义。
控制特定页面
标题页的 \maketitle 或章首页常自动使用 plain 样式。需要统一时重新定义该样式:
\fancypagestyle{plain}{
\fancyhf{}
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0pt}
}
这比在每一章后手工补 \thispagestyle 更稳定。
调整页眉高度
页眉文字较高时,fancyhdr 可能报告 \headheight is too small。按警告建议或设置足够高度:
\setlength{\headheight}{14pt}
不要忽略该警告,它可能导致页眉与正文重叠或版心计算错误。
常见问题
页码消失
检查是否使用了 empty 样式,或是否在 \fancyhf{} 后忘记重新设置 \fancyfoot[C]{\thepage}。
章节首页与其他页不同
许多文档类为章节首页使用 plain。重新定义 plain,或按模板说明调整章节样式。
页眉标题过长
给章节标题提供较短的标记文本,或使用模板提供的标题命令。不要把完整长标题强行放进窄页眉。
完整示例
\documentclass[UTF8,a4paper,12pt]{ctexart}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{实验报告}
\fancyhead[R]{\leftmark}
\fancyfoot[C]{\thepage}
\setlength{\headheight}{14pt}
\begin{document}
\tableofcontents
\section{实验方法}
这是带页眉、页脚和页码的正文。
\newpage
\section{实验结果}
第二页继续显示相同的页面样式。
\end{document}