我想为文档的偶数页和奇数页获取两个不同的标题:偶数页应包含书的页码,后跟前缀“章节”和章节号,左对齐;另一方面,奇数页应包含章节名称(无前缀)和书的页码,右对齐
到目前为止,我能得到的最好的结果就是这个,但是,它却让我的偶数页标题完全空白。我该怎么做?感谢所有回答我的人。
\documentclass[12pt, twoside]{book}
\usepackage{amssymb}
\usepackage{enumitem}
\usepackage{titlesec}
\usepackage{ragged2e}
\usepackage{lipsum}
\usepackage{textcase}
\titleformat{\chapter}[display]
{\normalfont\huge\bfseries\raggedleft}
{\chaptertitlename\ \thechapter}{20pt}
{\titlerule[1pt]\vspace{1ex}\Huge}
\usepackage{graphicx}
\usepackage{amsmath}%
\usepackage{floatrow}
\setcounter{MaxMatrixCols}{30}%
\usepackage{amsfonts}
\usepackage{geometry}
\geometry{
b5paper,
total={6.93in, 9.84in},
top=1.26in,
bottom=0.98in,
left=0.95in,
right=0.95in,
}
\usepackage{fancyhdr}
\fancypagestyle{ChapterStyle}{
\fancyhf{}
\fancyhead[RO]{\normalsize\nouppercase{\leftmark}\ \thepage}
\renewcommand{\headrulewidth}{0.4pt}
}
\fancypagestyle{ChapterStyleEven}{
\fancyhf{}
\fancyhead[LE]{\footnotesize\textbf{Chapter \thechapter}\ \thepage}
\renewcommand{\headrulewidth}{0.4pt}
}
\titleformat{\chapter}[display]
{\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge\filleft}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancypagestyle{plain}{
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
\makeatletter
\renewcommand{\@makechapterhead}[1]{%
\vspace*{50\p@}%
{\parindent \z@ \raggedleft \normalfont
\ifnum \c@secnumdepth >\m@ne
\huge\bfseries \thechapter
\fi
\par\nobreak
\interlinepenalty\@M
\Huge\bfseries #1\par\nobreak
\vskip 20\p@
\hrule
\vskip 40\p@
}}
\makeatother
\newenvironment{proof}[1][Proof]{\textbf{#1.} }{\ \rule{0.5em}{0.5em}}
\begin{document}
\frontmatter
\pagestyle{fancy}
\fancyhf{}
\fancyhead[R]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\begin{titlepage}
\title{Example Document}
\end{titlepage}
\date{}
\maketitle
\newpage
\setcounter{page}{1}
\tableofcontents
\newpage
\noindent {\LARGE Preface}.
\bigskip
\noindent
\lipsum[2-4]
\mainmatter
\setcounter{chapter}{0}
\thispagestyle{plain}
\newpage
\chapter{Example chapter}
\noindent\fbox{%
\parbox{\textwidth}{%
\begin{minipage}{0.99\textwidth}
\vspace{5pt}
\justifying
\begin{itemize}[leftmargin=15pt]
\item
\item
\item
\item
\item
\end{itemize}
\vspace{1pt}
\end{minipage}%
}%
}
\newpage
\pagestyle{ChapterStyle}
\section{introduction}
\vspace*{-10pt}
\lipsum[2-20]
\end{document}
答案1
您提供的代码中有很多警告和错误;我不会尝试为您修复所有问题。但是我们鼓励您修复这些问题(您可以阅读软件包文档以了解如何修复,或者如果做不到,可以在此网站上询问相关问题)。
对于样式问题,您不需要分别为偶数页和奇数页定义页面样式。命令中的[RO]
和表示它应该应用于奇数页还是偶数页。因此,类似[LE]
\fancyhead
\fancypagestyle{ChapterStyle}{
\fancyhf{}
\fancyhead[RO]{\footnotesize\nouppercase{\leftmark} \quad \thepage}
\fancyhead[LE]{\footnotesize\thepage \quad\textbf{Chapter \thechapter}}
\renewcommand{\headrulewidth}{0.4pt}
}
会适当地设置两侧。(我擅自将页码设置为在偶数页上显示在外面,而不是在章节号后面;我还稍微调整了间距和大小,以便两侧匹配。)
您的呼叫\geometry
也应该修复:
\geometry{
b5paper,
top=1.26in,
bottom=0.98in,
left=0.95in,
right=0.95in,
headheight=15pt
}
您的原始版本指定了纸张大小、可打印区域的大小以及边距的大小。这指定过多了(任何两个都会决定第三个);不要这样做。我还添加了 headerheight 的规范,以便为您的页眉留出更多空间(主要是因为您的原始版本用于\normalsize
页眉和保留的默认空间不够)。