对设置页眉和页脚信息感到困惑?

对设置页眉和页脚信息感到困惑?

我已阅读了参考手册,但对\markright\markboth\rightmark命令等的使用方法仍有些困惑。有了实际示例,我或许能够自己弄清楚并进行调整。我想实现以下风格:

+-----------------------------------------------+
| SECTION HEADER            Microprocessor Lab  | (header)
| --------------------------------------------- |
| 1 Section Header                              |
                     ...
                     ...
|                                               |
| My Name        Page Number   University Name  |  (footer)
+-----------------------------------------------+

根据我的一点理解,这是我所能想到的全部内容:

\documentclass{article}
\pagestyle{myheadings}
\usepackage{blindtext}
\markright{\rightmark\hfill Microprocessor Lab\hfill}
\begin{document}
\blinddocument
\end{document}

这显然行不通。所以欢迎提出任何建议。谢谢!

答案1

使用包fancyhdr。普通的 TeX/LaTeX 命令相当令人困惑(正如您所发现的)。

\documentclass{article}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead[L]{\leftmark}
\fancyhead[R]{Microprocessor Lab}
\fancyfoot[L]{My name}
\fancyfoot[C]{\thepage}
\fancyfoot[R]{University Name}
\usepackage{blindtext}
\begin{document}
\blinddocument
\end{document}

答案2

myheadings 用于\def\@oddhead{{\slshape\rightmark}\hfil\thepage}奇数页的页眉。\rightmark使用 进行设置\markright,因此\markright{\rightmark}不执行任何操作。此外,myheadings 使用\let\sectionmark\@gobble而不是 任何有用的内容。

\documentclass{article}
\pagestyle{myheadings}
\usepackage{blindtext}
\makeatletter
\def\@oddhead{{\slshape\rightmark}\hfill Microprocessor Lab\hfill}%
\def\sectionmark#1{%
      \markright {\MakeUppercase{%
        \ifnum \c@secnumdepth >\m@ne
          \thesection\quad
        \fi
        #1}}}
\makeatother
\begin{document}
\blinddocument
\end{document}

相关内容