![如何设置页码的颜色](https://linux22.com/image/252362/%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E9%A1%B5%E7%A0%81%E7%9A%84%E9%A2%9C%E8%89%B2.png)
我在黑色页面上使用白色字体,不知何故页码不见了。我想页码仍然是黑色的。那么我们如何设置页码的颜色呢?说到这个话题,页脚的颜色如何呢?
答案1
您可以使用以下方式将所有颜色信息添加到页面样式中fancyhdr
。
在以下 MWE 中,我定义了mypagestyle
设置页码red
(使用\textcolor{red}{\thepage}
)并修改了标题规则宏\headrule
:
\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{xcolor}% http://ctan.org/pkg/xcolor
\usepackage{fancyhdr}% http://ctan.org/pkg/fancyhdr
\makeatletter
\fancypagestyle{mypagestyle}{%
\fancyhf{}% Clear header/footer
\fancyfoot[C]{\textcolor{red}{\thepage}}% Page # in middle/centre of footer
\renewcommand{\headrulewidth}{.4pt}% .4pt header rule
\def\headrule{{\if@fancyplain\let\headrulewidth\plainheadrulewidth\fi
\color{red}\hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}}
\renewcommand{\footrulewidth}{0pt}% No footer rule
% \def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi
% \vskip-\footruleskip\vskip-\footrulewidth
% \hrule\@width\headwidth\@height\footrulewidth\vskip\footruleskip}}
}
\makeatother
\pagestyle{mypagestyle}
\begin{document}
\lipsum
\end{document}
如果您对彩色页脚规则感兴趣,情况也是如此。\footrule
为了完整起见,我在评论中包含了定义。
答案2
如果你需要做的就是改变颜色页面上的页码,如果您可以使用 LaTeX 的“普通”页面样式,以下 MWE 将向您展示如何做到这一点。
\documentclass{article}
\usepackage{lipsum,xcolor,etoolbox} % lipsum for filler text
\makeatletter % change only the display of \thepage, but not \thepage itself:
\patchcmd{\ps@plain}{\thepage}{\textcolor{red}{\thepage}}{}{}
\makeatother
\begin{document}
\pagestyle{plain} % after changing a pagestyle command, it's necessary to invoke it explicitly
\lipsum[1-3]
\end{document}
除了“纯色”页面样式外,标准 LaTeX 文档类还提供“标题”和“myheadings”页面样式。如果您正在使用其中一种页面样式并希望重置页码的颜色,则应在文档的序言中插入以下代码(当然,除了加载和包之外)etoolbox
:xcolor
\makeatletter
% patch the "plain" page style
\patchcmd{\ps@plain}{\thepage}{\textcolor{red}{\thepage}}{}{}
% patch the "headings" page style
\if@twoside
\patchcmd{\ps@headings}{\thepage\hfil}{\textcolor{red}{\thepage}\hfil}{}{}
\patchcmd{\ps@headings}{\hfil\thepage}{\hfil\textcolor{red}{\thepage}}{}{}
\else
\patchcmd{\ps@headings}{\hfil\thepage}{\hfil\textcolor{red}{\thepage}}{}{}
\fi
% patch the "myheadings" page style
\patchcmd{\ps@myheadings}{\thepage\hfil}{\textcolor{red}{\thepage}\hfil}{}{}
\patchcmd{\ps@myheadings}{\hfil\thepage}{\hfil\textcolor{red}{\thepage}}{}{}
\makeatother
然后,确保发出\pagestyle{plain}
、\pagestyle{headings}
或\pagestyle{myheadings}
之后\begin{document}
。