在普通页面上,我有页眉,没有页脚。在第一章页面上,我有页脚(带有页码),没有页眉。因此我需要:
\newgeometry{top=2cm, bottom=1.2cm, left=1.5cm, right=1.7cm}
对于普通页面,以及
\newgeometry{top=1.2cm, bottom=2cm, left=1.5cm, right=1.7cm}
第一章页面。
在书籍文档类中,第一章页面是plain
页面样式。我想我可以这样做:
\usepackage[top=2cm, bottom=1.2cm, left=1.5cm, right=1.7cm]{geometry}
\newcommand\pagewithheader{
\newgeometry{top=2cm, bottom=1.2cm, left=1.5cm, right=1.7cm}
\renewcommand{\headrulewidth}{0.6pt}
}
\newcommand\pagewithfooter{
\newgeometry{top=1.2cm, bottom=1cm, left=1.5cm, right=1.7cm}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\fancyfoot[C]{\thepage}
}
\usepackage{afterpage}
\fancypagestyle{plain}{
\pagewithfooter
\afterpage{\pagewithheader}
}
但是我把所有链接都搞乱了,浮动也疯了。我尝试构建一个 MWE:
\documentclass[a5paper,twoside]{book}
\usepackage{fontspec} % enagles loading of OpenType fonts
\usepackage{polyglossia} % support for languages
% fonts:
\defaultfontfeatures{Scale=MatchLowercase,Mapping=tex-text} % without this XeLaTeX won't turn "--" into dashes
\setmainfont{Arial}
\setsansfont{Arial}
\setmonofont{DejaVu Sans Mono}
\usepackage{kantlipsum}
\usepackage[top=2cm, bottom=1.2cm, left=1.5cm, right=1.7cm]{geometry}
\newcommand\pagewithheader{
\newgeometry{top=2cm, bottom=1.2cm, left=1.5cm, right=1.7cm}
\renewcommand{\headrulewidth}{0.6pt}
}
\newcommand\pagewithfooter{
\newgeometry{top=1.2cm, bottom=1cm, left=1.5cm, right=1.7cm}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\fancyfoot[C]{\thepage}
}
\usepackage{fancyhdr}
% page style for a non-chapter pages:
\renewcommand{\rightmark}[1]{\markboth{#1}{}}
\renewcommand{\leftmark}[1]{\chaptername{}\thechapter}
\fancyhf{}
\fancyhead[LO]{\leftmark}
\fancyhead[RE]{\rightmark}
\fancyhead[LE,RO]{\thepage}
\pagestyle{fancy}
\usepackage{afterpage}
\fancypagestyle{plain}{
\pagewithfooter
\afterpage{\pagewithheader}
}
\begin{document}
\chapter{foo}
\kant[1-12]
\chapter{bar}
\kant[1-12]
\chapter{baz}
\kant[1-12]
\end{document}
但不幸的是,它能工作。然而我有一个包含数十个链接和浮动元素的复杂文档 — — 它却不能(我想是因为浮动元素)。
会是什么呢?也许有人有办法让第一章页面具有不同的几何形状。
答案1
我会使用 scrbook 类,然后向上\chapterheadstartvskip
移动\chapter
并\enlargethispage
缩短页面。您的\leftmark
和\rightmark
定义是无稽之谈,所以我也更改了它们。
\documentclass[a5paper,twoside]{scrbook}
\usepackage{kantlipsum}
\usepackage[top=2cm, bottom=1.2cm, left=1.5cm, right=1.7cm,heightrounded]{geometry}
\usepackage{fancyhdr}
%\renewcommand{\rightmark}[1]{\markboth{#1}{}} %Nonsense
%\renewcommand{\leftmark}[1]{\chaptername{}\thechapter}%nonsense
\renewcommand\chaptermark{\markboth{\chaptername{}\thechapter}{}}
\fancyhf{}
\fancyhead[LO]{\leftmark}
\fancyhead[RE]{}
\fancyhead[LE,RO]{\thepage}
\pagestyle{fancy}
\renewcommand*{\chapterheadstartvskip}{\vspace{-1cm}\enlargethispage{-1cm}}
\begin{document}
\chapter{foo}
\kant[1-12]
\chapter{bar}
\kant[1-12]
\chapter{baz}
\kant[1-12]
\end{document}
答案2
对此有更简单的解决方案(来自维基百科)
\usepackage{titlesec} \titlespacing*{\chapter}{0pt}{-50pt}{20pt} \titleformat{\chapter}[display]{\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge}