我在以下链接中询问如何在标题中获取“章节名称”和“部分”: 使用 \chapter 和 \section 时 \markboth 不起作用。现在我决定将section name
之前发布的同一问题中的标题替换为“书名”。我尝试按以下方式进行更改:
\documentclass[a4paper,12pt]{book}
\usepackage[vmargin=0.2cm,hmargin=1cm,head=16pt,includeheadfoot]{geometry}
\usepackage{fancyhdr,amsthm}
\pagestyle{fancy}
% We don't want chapter and section numbers
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
%\renewcommand{\sectionmark}[1]{\markright{#1}}
\fancyhead{}
\fancyfoot{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[LO]{\slshape\rightmark}
\fancyhead[RE]{\slshape\leftmark}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{corollary}[theorem]{Corollary}
\begin{document}
\chapter{Chapter}
\section{Section}
\markboth{book name}{section name}
\begin{theorem}
Theorem
\end{theorem}
\newpage
Second page
\newpage
Third page
\end{document}
但是“书名”没有出现在页眉中。要使“书名”出现在奇数页,而“章节名称”出现在偶数页,需要什么命令?
答案1
\markboth
在文档主体中发出明确的命令是最后一种资源。
只需说出fancyhdr
您想要什么;\leftmark
只是一个(可能选择不当的)名称,它“包含”最后指定为命令中的第一个参数的内容\markboth
,这通常是隐含的\chapter
(更准确地说,\chapter
依次\chaptermark
执行\markboth
)。
\pagestyle{fancy}
% We don't want chapter and section numbers
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[LO]{\slshape Book Title} % odd pages: book title
\fancyhead[RE]{\slshape\leftmark} % even pages: chapter title
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{corollary}[theorem]{Corollary}