我正在使用 .sty 文件,它定义了myheadings
如下样式:
\pagestyle{myheadings}
\markboth{}{header part 1~header part 2~\textendash~header part 3}
pagestyle 在页眉右侧插入页码。我现在想将数字从纯数字更改X
为X of N
。其他关于如何更改页码的答案似乎在中定义它们\cfoot
,这与 myheadings 样式不匹配,但仅适用于页脚内的页码。
我猜有一个简单的命令需要更新,以便页面样式自动使用正确的格式,但我找不到哪一个。
答案1
\documentclass[12pt, openany]{book}
\usepackage{lastpage}% for last page
\pagestyle{myheadings}
\markboth{}{header part 1~header part 2~\textendash~header part 3}
\makeatletter
\def \@evenhead {\thepage\ of \pageref{LastPage} \hfil \slshape \leftmark } % added <<<<
\def \@oddhead {{\slshape \rightmark }\hfil \thepage\ of \pageref{LastPage}} % added <<<<
\makeatother
\usepackage{kantlipsum}% only for dummy text
\begin{document}
\kant[1-15]
\end{document}
流行的软件包fancyhdr
提供了更多控制页眉和页脚的多功能性。
\documentclass[12pt, openany]{book}
\usepackage{lastpage}% for last page
\usepackage{fancyhdr}% added <<<<<<<<
\fancyhf{} % clear header and footer
\renewcommand{\headrulewidth}{0pt}% suppress line after header
\fancyhead[LO]{\slshape header part 1~header part 2~\textendash~header part 3}% Left Odd pages
\fancyhead[LE,RO]{\thepage\ of \pageref{LastPage}} % Left Even and Right Odd pages
\pagestyle{fancy} % choose the style
\usepackage{kantlipsum}% only for dummy text
\begin{document}
\kant[1-15]
\end{document}