我使用包定义了页码样式fancy
,但是,索引页上的页码设置在页脚的中心。如何将页码放在正确的位置或将其从索引页中完全删除(至少……)?
\documentclass[]{article}
\usepackage{lastpage}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{\thepage/\pageref{LastPage}}
\renewcommand{\headrulewidth}{0pt}
\usepackage{makeidx}
\makeindex
\begin{document}
\section{A} \index{A}
\newpage
\section{B} \index{B}
\printindex
\end{document}
答案1
您必须重新定义plain
页面样式。如果您还想保留它,您可以尝试类似这样的方法。@Ruedi 是第一个,但这并不适合评论……
\documentclass[]{article}
\usepackage{lastpage}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{\thepage/\pageref{LastPage}}
\renewcommand{\headrulewidth}{0pt}
% BACKUP PLAIN STYLE
\makeatletter
\let\ps@plainorig\ps@plain
\makeatother
\usepackage{makeidx}
\makeindex
\begin{document}
\section{A} \index{A}
\newpage
\section{B} \index{B}
% CHANGE PLAIN STYLE
\makeatletter
\let\ps@plain\ps@fancy
\makeatother
\printindex
% REVERT PLAIN STYLE
\makeatletter
\let\ps@plain\ps@plainorig
\makeatother
\end{document}
答案2
答案可以在 fancyhdr 手册的第 7 节中找到:
一些 Latex 命令(如 \chapter)使用 \thispagestyle 命令自动切换到纯页面样式,从而忽略当前有效的页面样式。要自定义此类页面,您必须重新定义纯页面样式
您可以将以下代码添加到序言中,以复制其他页面的页面样式:
\fancypagestyle{plain}{%
\fancyhf{}
\rhead{\thepage/\pageref{LastPage}}
\renewcommand{\headrulewidth}{0pt}}
这基本上为“普通”页面样式设置了相同的选项。