现在,我正在尝试完成我的毕业论文的布局 - 不幸的是我不知道如何实现我想要的标题。我正在使用文档amsart
类并尝试使用包实现以下目标fancyhdr
:
- 我想要在偶数页上显示页眉:在左侧,页码在右侧
- 奇数页:页码在左边,页码在右边
以下是相关的 LaTeX 代码:
\documentclass[twoside,12pt]{amsart}
\usepackage{amssymb,amsthm,array,arydshln}
\usepackage[toc,page]{appendix}
\usepackage{multicol}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{fancyhdr}
\usepackage{geometry}
\geometry{a4paper}
\begin{document}
\pagestyle{fancyplain}
\fancyhf{}
\lhead[\thepage]{\leftmark}
\rhead[\leftmark]{\thepage}
\title{test}
\maketitle
\end{document}
我实现了两个不同的输出,取决于我输入的内容
\lhead[\thepage]{\leftmark}
\rhead[\leftmark]{\thepage}
\leftmark
以及\rightmark
将显示标题而不是(子)部分的标题;到目前为止,使用任何其他方法都会导致不显示任何内容
我读了不少文章,但还是完全迷失了,因为它们都不是针对我的用例编写的,即amsart
文档类
我很感激任何帮助,如果需要的话我会提供更多信息
答案1
我删除了手头任务中所有不必要的包;只需使用fancyhdr
文档中的设置即可后设置页面几何。
还要记住,hyperref
应该最后加载,与您选择的包一起加载(很少有包应该在之后加载hyperref
)。
必须修补\@sect
提供的命令amsart
,因为该命令没有发出所需的标记。
\documentclass[twoside,12pt]{amsart}
\usepackage{geometry}
\geometry{a4paper,headheight=12pt}
\usepackage{fancyhdr}
\pagestyle{fancy} % choose the "fancy" pagestyle
\fancyhf{} % clear all headers and footers
% Now set the headers
\fancyhead[LE,RO]{\footnotesize\thepage}
\fancyhead[LO,RE]{\footnotesize\leftmark}
%%% This code should go after hyperref, if loaded
\usepackage{xpatch}
\makeatletter
\xapptocmd{\@sect}{\csname #1mark\endcsname{#7}}{}{}
\makeatother
\usepackage{kantlipsum} % just for adding mock text
\begin{document}
\title{test}
\maketitle
\section{Test section}
\subsection{Test subsection}
\kant[1-12]
\end{document}