页眉中的标题和作者没有 fancyhdr

页眉中的标题和作者没有 fancyhdr

我试图让作者姓名和标题分别出现在页眉中心的交替页面上。此外,我希望偶数页在页眉左侧,奇数页在页眉右侧 - 从第 2 页开始。我想避免使用 fancyhdr 包,因为我不想有任何线将页眉与正文分开。

答案1

您有几种可能:

1)使用titleps

\documentclass[twoside]{article}
\usepackage{titleps}
\usepackage{lipsum}

\newpagestyle{mystyle}{
\sethead[\thepage][\Author][]{}{\Title}{\thepage}
}
\pagestyle{mystyle}

\author{First Author \and Second Author}
\title{The title}

\makeatletter
\newcommand\Author{First Author---Second Author}
\let\Title\@title
\makeatother

\begin{document}

\maketitle
\lipsum[1-20]

\end{document}

2)使用fancyhdr\renewcommand\headrulewidth{0pt}标题中没有规则):

\documentclass[twoside]{article}
\usepackage{fancyhdr}
\usepackage{lipsum}

\fancyhf{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[CE]{\Author}
\fancyhead[CO]{\Title}
\renewcommand\headrulewidth{0pt}
\pagestyle{fancy}

\author{First Author \and Second Author}
\title{The title}

\makeatletter
\newcommand\Author{First Author---Second Author}
\let\Title\@title
\makeatother

\begin{document}

\maketitle
\lipsum[1-20]

\end{document}

3)无包装:

\documentclass[twoside]{article}
\usepackage{lipsum}

\author{First Author \and Second Author}
\title{The title}

\makeatletter
\newcommand\Author{First Author---Second Author}
\let\Title\@title
\def\ps@mystyle{%
      \let\@oddfoot\@empty\let\@evenfoot\@empty
      \def\@evenhead{\makebox[0pt][l]{\thepage}\hfill\Author\hfill}%
      \def\@oddhead{\hfill\Title\hfill\makebox[0pt][l]{\thepage}}%
      \let\@mkboth\markboth}
\makeatother
\pagestyle{mystyle}

\begin{document}

\maketitle
\lipsum[1-20]

\end{document}

附录:

在评论中,有人请求解决方案没有使用twoside类选项:

\documentclass{article}
\usepackage{lipsum}

\author{First Author \and Second Author}
\title{The title}

\makeatletter
\newcommand\Author{First Author---Second Author}
\let\Title\@title
\def\ps@mystyle{%
      \let\@oddfoot\@empty\let\@evenfoot\@empty
      \def\@oddhead{%
       \ifodd\value{page}\relax
          \hfill\Title\hfill\makebox[0pt][l]{\thepage}%
      \else
          \makebox[0pt][l]{\thepage}\hfill\Author\hfill%
      \fi%
      }%
      \let\@mkboth\markboth}
\makeatother
\pagestyle{mystyle}

\begin{document}

\maketitle
\lipsum[1-20]

\end{document}

相关内容