更改页脚顶部的水平线颜色

更改页脚顶部的水平线颜色

我想更改页脚上方水平线的颜色。我已参考问题并复制了下面的相关代码。这成功更改了页眉底部水平线的颜色。但是,我无法操纵它来更改页脚顶部线条的颜色。

  \renewcommand{\headrulewidth}{0.5pt}
  \renewcommand{\headrule}{\hbox to\headwidth{\color{mycustomcolor}\leaders\hrule height \headrulewidth\hfill}}
  \renewcommand{\footrulewidth}{0.5pt}

我尝试将第二行更改\headrule\footrule,但没有效果,而且我也不太清楚如何进行正确的更改以将其应用到页脚。

非常感谢您的帮助,谢谢。

答案1

这有效....

\documentclass{article}

\usepackage{xcolor}
\usepackage{fancyhdr}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\headrule}{\hbox to\headwidth{\color{red}\leaders\hrule height \headrulewidth\hfill}}
\renewcommand{\footrulewidth}{0.5pt}
\renewcommand{\footrule}{\hbox to\headwidth{\color{red}\leaders\hrule height \footrulewidth\hfill}}
\pagestyle{fancy}

\begin{document}
    hello
\end{document}

答案2

JPi 的答案有效,但增加了额外的空间。这个额外的空间是预期的,并在\headrule和的标准定义中得到解释,如下所示。\footrulefancyhdr.sty

\def\headrule{{\if@fancyplain\let\headrulewidth\plainheadrulewidth\fi
    \hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}}

\def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi
    \vskip-\footruleskip\vskip-\footrulewidth
    \hrule\@width\headwidth\@height\footrulewidth\vskip\footruleskip}}

请注意\vskip上面每个定义末尾的。

这里有一个技巧,它不会重新定义线条画,而是在标准定义中添加颜色。

% Save standard definitions
\let\HeadRule\headrule
\let\FootRule\footrule
% Add color to standard definitions.
\renewcommand\headrule{\color{red}\HeadRule}
\renewcommand\footrule{\textcolor{red}{\FootRule}}

\headrule您会注意到,和的重新定义\footrule不使用相同的着色命令。 的重新定义\headrule使用\color命令作为使用,\textcolor最终添加了空格。 的重新定义\footrule使用\textcolor命令作为使用,\color最终为所有页脚文本着色。

以下是与 JPi 的回答类似的 MWE。

\documentclass{article}

\usepackage{blindtext}
\usepackage{fancyhdr}
\usepackage{xcolor}

\renewcommand{\footrulewidth}{\headrulewidth}
% Save standard definitions
\let\HeadRule\headrule
\let\FootRule\footrule
% Add color to standard definitions.
\renewcommand\headrule{\color{red}\HeadRule}
\renewcommand\footrule{\textcolor{red}{\FootRule}}
\pagestyle{fancy}

\lhead{Left Head}
\rhead{Right Head}
\cfoot{Page \thepage}

\begin{document}
Hello, world!

\Blindtext
\end{document}

这是编译输出的第一页。 显示彩色页眉和页脚线的页面

相关内容