无法在 fancyfoot 中应用颜色,setmainfont 会覆盖它

无法在 fancyfoot 中应用颜色,setmainfont 会覆盖它

我正在使用fancyhdr包并有这个特克斯文件:

\documentclass[a4paper]{testcv}
\usepackage{fontspec}
\usepackage[russian]{babel}

\footersection{\today}{Footer text}{}

\begin{document}
Page text
\end{document}

这个类文件:

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{testcv}[2016/02/10 CV class]

\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} 
\ProcessOptions

\LoadClass[titlepage]{article}

\usepackage{fontspec}
\usepackage{color}
\usepackage{fancyhdr}

\fancyhfoffset{0em}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\pagestyle{fancy}


\usepackage[usenames,dvipsnames]{xcolor}
\definecolor{contentcolor}{HTML}{A6A6A6}
\definecolor{footercolor}{HTML}{FF0000}

% (1) Footer color == contentcolor
\setmainfont[Color=contentcolor, Path = ../fonts/ubuntu/]{Ubuntu-L}

% (2) Footer color is ok
% \setmainfont[Path = ../fonts/ubuntu/]{Ubuntu-L} 


\renewcommand{\footrulewidth}{0.5pt}
\def\footrule{{
  \vskip-\footruleskip\vskip-\footrulewidth
  \color{footercolor}
  \hrule\@width\headwidth\@height
  \footrulewidth\vskip\footruleskip
}}


\newcommand{\footersection}[3]{
\fancyfoot{}
\fancyfoot[L]{\color{footercolor}#1}
\fancyfoot[C]{\color{footercolor}#2}
\fancyfoot[R]{\color{footercolor}#3}   
}

取消注释(1)后,我得到了错误颜色的输出: 错误的颜色

如果我们改用(2),那么页面文本颜色将变为黑色,但页脚可以正常工作: 好颜色

在 Windows 上使用 XeLaTeX 进行编译。

我该如何设置\setmainfont[Color=contentcolor]并获得正确的红色页脚?

已经找到这个答案,但我不能使用它。

答案1

作为乌尔丽克·菲舍尔请注意,当您使用颜色-键入\setmainfont,此颜色始终获胜,您不再可以使用命令更改它\color。我的文档基于流行的Deedy 简历正确的解决方案是:

\newcommand{\footeritem}[1]{
  \color{footercolor}
  \fontspec[Path = ../fonts/ubuntu/]{Ubuntu-L}  
  \selectfont{#1}
}

\newcommand{\footersection}[3]{
\fancyfoot{}
\fancyfoot[L]{\footeritem{#1}}
\fancyfoot[C]{\footeritem{#2}}
\fancyfoot[R]{\footeritem{#3}}
}

相关内容