我们能否通过单个命令更改逻辑类型的文本(例如每个页眉或每个页脚)的颜色?页眉和页脚正在使用fancyhdr
。
我认为它应该是,\renewcommand
但它不会影响依赖包,如fancyhdr
?我可以从 fancyhdr 使用的宏中定义较新的宏,如\rfoot
或\cfoot
,表示\rfootcolored
或\cfootcolored
。但然后我必须从头开始重新设计整个页眉/页脚……我不想这样做。
一个 MWE。
\documentclass{book}
\usepackage{lipsum}
\usepackage{fancyhdr}
\begin{document}
\pagestyle{fancy}
\chapter{Lipsum}
\lipsum[1-6]
\section{lipsumsection}
\lipsum[7-10]
\chapter{Lipsum2}
\lipsum[2-7]
\end{document}
答案1
您可以使用etoolbox
包来修补内部fancyhdr
宏\f@nch@head
和\f@nch@foot
(如果您想要彩色规则,还有\headrule
和\footrule
):
\documentclass{book}
\usepackage{lipsum}
\usepackage{fancyhdr}
\usepackage{xcolor}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\f@nch@head}{\rlap}{\color{red}\rlap}{}{}
\patchcmd{\headrule}{\hrule}{\color{red}\hrule}{}{}
\patchcmd{\f@nch@foot}{\rlap}{\color{green}\rlap}{}{}
\patchcmd{\footrule}{\hrule}{\color{green}\hrule}{}{}
\makeatother
\begin{document}
\pagestyle{fancy}
\chapter{Lipsum}
\lipsum[1-6]
\section{lipsumsection}
\lipsum[7-10]
\chapter{Lipsum2}
\lipsum[2-7]
\end{document}