我正在使用 fancyhdr 包来设置论文的页眉和页脚。我最近添加了 LaTeX \parts
,并为此定义了一个名为“partpagestyle”的页面样式。如下面的 MWE 所示,“onlycount”样式正确地删除了每章第一页的页眉。我已定义“partpagestyle”来清除的格式fancyhdr
,但没有得到预期的结果。我仔细阅读了手册(http://texdoc.net/texmf-dist/doc/latex/fancyhdr/fancyhdr.pdf) 无济于事。我在这里做错了什么?
\documentclass[10pt]{report}
\usepackage{lipsum}
\usepackage{fancyhdr}
% Clear everything on part pages
\fancypagestyle{partpagestyle}
{
\fancyhf{}
}
% First page of chapter style
\fancypagestyle{onlycount}
{
\fancyhf{}
\renewcommand\headrulewidth{0pt}
\renewcommand\footrulewidth{0pt}
\fancyfoot[C]{\thepage}
}
\fancypagestyle{plain}{
\lhead[\rm\thepage]{\fancyplain{}{\nouppercase{\sl{\bf{\leftmark}}}}}
\rhead[\rm\thepage]{\fancyplain{}{\nouppercase{\sl{\bf{\rightmark}}}}}
\chead{}\lfoot{}\rfoot{}\cfoot{}
\renewcommand{\headrulewidth}{0.1mm}%
\fancyfoot[C]{\thepage}%
}
\pagestyle{plain}
\begin{document}
\begin{titlepage}
\huge \bfseries Thesis
\end{titlepage}
\chapter{Introduction}\thispagestyle{onlycount}
\lipsum[1-3]
\section{Motivation}
\lipsum[1-3]
\part{Some Part}
%\thispagestyle{partpagestyle}
%\thispagestyle{partpagestyle}
\chapter{Second Chapter}\thispagestyle{onlycount}
\lipsum[1-9]
\end{document}
答案1
宏\part
来自其设置中report.cls
始终有一个,因此使用厚度的标题规则重新定义样式将显示这样的样式。\thispagestyle{plain}
plain
0.1mm
\fancyhf{}
只清除页眉和页脚的各个字段,但是不是页眉或页脚规则。为了清除此规则,我添加了\renewcommand{\headrulewidth}{0pt}
定义partpagestyle
。
此代码修补了\part
要使用的partpagestyle
命令plain
\documentclass[10pt]{report}
\usepackage{lipsum}
\usepackage{fancyhdr}
% Clear everything on part pages
\fancypagestyle{partpagestyle}
{%
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
}
% First page of chapter style
\fancypagestyle{onlycount}
{
\fancyhf{}
\renewcommand\headrulewidth{0pt}
\renewcommand\footrulewidth{0pt}
\fancyfoot[C]{\thepage}
}
\fancypagestyle{plain}{
\lhead[\rm\thepage]{\fancyplain{}{\nouppercase{\textsl{\bfseries{\leftmark}}}}}
\rhead[\rm\thepage]{\fancyplain{}{\nouppercase{\textsl{\bfseries{\rightmark}}}}}
\chead{}\lfoot{}\rfoot{}\cfoot{}
\renewcommand{\headrulewidth}{0.1mm}%
\fancyfoot[C]{\thepage}%
}
\usepackage{xpatch}
% Patch the `\thispagestyle` code within `\part
\xpatchcmd{\part}{\thispagestyle{plain}}{\thispagestyle{partpagestyle}}{}{}
\pagestyle{fancy}
\begin{document}
\begin{titlepage}
\huge \bfseries Thesis
\end{titlepage}
\chapter{Introduction}\thispagestyle{onlycount}
\lipsum[1-3]
\section{Motivation}
\lipsum[1-3]
\part{Some Part}
\thispagestyle{onlycount}
\chapter{Second Chapter}
\lipsum[1-9]
\end{document}
答案2
这是一种方法
\documentclass[10pt]{report}
\usepackage{lipsum}
\usepackage{fancyhdr}
\fancyhf{}
\lhead{\nouppercase{\textsl{\bfseries{\leftmark}}}}
\rhead{\nouppercase{\textsl{\bfseries{\rightmark}}}}
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0.1mm}
\pagestyle{fancy}
\usepackage{xpatch}
\xpatchcmd{\part}{\thispagestyle{plain}}{\thispagestyle{empty}}{}{}
\begin{document}
\begin{titlepage}
\huge \bfseries Thesis
\end{titlepage}
\chapter{Introduction}
\lipsum[1-3]
\section{Motivation}
\lipsum[1-3]
\part{Some Part}
\chapter{Second Chapter}
\lipsum[1-9]
\end{document}