我正在尝试在文档的不同位置设置自定义样式,例如前几个部分没有页码,而其余部分则遵循通用页码和页眉样式。运行下面的示例代码,只有当页面为偶数(???)时,我才能获得正确的行为。任何帮助都将不胜感激!
\documentclass[11pt,twoside,a4paper,unicode]{book}
\usepackage{fancyhdr}
\fancypagestyle{style1}{
\fancyhf{}
\fancyfoot[CO]{133 Odd}
\fancyfoot[CE]{133 Even}}
\fancypagestyle{style2}{
\fancyhf{}
\fancyfoot[CO]{112 Odd}
\fancyfoot[CE]{113 Even}}
\pagestyle{style1}
\begin{document}
\chapter{One}
\pagestyle{style2}
\chapter{Two}
text
\chapter{Three}
\chapter{Four}
\end{document}
答案1
由于openany
未使用 ,章节从奇数页(正面页)开始,因此将始终使用plain
页面样式,而不是style1
或style2
。
如果章节起始页应遵循所需行为,plain
则还必须重新定义页面样式。(我再次使用了此处的示例style1
,因为不清楚章节起始页应显示什么。
为了显示更多效果,请使用\blindtext[10]
获取多个整页,而不仅仅是text
。
\documentclass[11pt,twoside,a4paper]{book}
\usepackage{blindtext}
\usepackage{fancyhdr}
\renewcommand{\headrulewidth}{0pt}% Perhaps?
\fancypagestyle{plain}{%
\fancyhf{}
\fancyfoot[CO]{133 Odd}
\fancyfoot[CE]{133 Even}
}
\fancypagestyle{style1}{
\fancyhf{}
\fancyfoot[CO]{133 Odd}
\fancyfoot[CE]{133 Even}
}
\fancypagestyle{style2}{
\fancyhf{}
\fancyfoot[CO]{112 Odd}
\fancyfoot[CE]{113 Even}}
\pagestyle{style1}
\begin{document}
\chapter{One}
\blindtext[10]
\pagestyle{style2}
\chapter{Two}
\blindtext[10]
\chapter{Three}
\blindtext[10]
\chapter{Four}
\blindtext[10]
\end{document}
答案2
\chapter
还有问题\thispagestyle{plain}
。如果您对那种样式根本不感兴趣,您可以更新命令\pagestyle{<style>}
(用于更改页面样式),以更新plain
;直接复制<style>
到plain
(通过\let\ps@plain\ps@<style>
):
\documentclass[twoside]{book}
\usepackage{fancyhdr}
\renewcommand{\headrulewidth}{0pt}% Remove header rule
\makeatletter
\let\oldpagestyle\pagestyle
\renewcommand{\pagestyle}[1]{%
\oldpagestyle{#1}% Set the page style
\expandafter\let\expandafter\ps@plain\csname ps@#1\endcsname% Update plain to new page style
}
\makeatother
\fancypagestyle{style1}{
\fancyhf{}
\fancyfoot[CO]{133 Odd}
\fancyfoot[CE]{133 Even}}
\fancypagestyle{style2}{
\fancyhf{}
\fancyfoot[CO]{112 Odd}
\fancyfoot[CE]{113 Even}}
\begin{document}
\pagestyle{style1}
\chapter{One}
\pagestyle{style2}
\chapter{Two}
text
\chapter{Three}
\chapter{Four}
\end{document}