在 moderncv 中更改电子邮件文本颜色

在 moderncv 中更改电子邮件文本颜色

我在尝试更改电子邮件中的文本颜色时遇到问题moderncv

我这样定义自己的颜色:

\definecolor{mycolor}{RGB}{0,0,0}

然后我像这样添加电子邮件:

\email{\textcolor{mycolor}{[email protected]}}

main.tex,第 45 行 软件包 xcolor 错误:未定义颜色“rgb(0,0,0)”。请参阅 xcolor 软件包文档以了解解释。键入 H 可立即获得帮助。... l.45 \makecvtitle 尝试键入以继续 如果不起作用,请键入 X 退出。

如果我在手机上尝试,它就可以工作

\phone[mobile]{\textcolor{mycolor}{+123456789}}

在此处输入图片描述

但我不知道为什么它不适用于电子邮件

答案1

您也可以更改我在您上一个问题中使用的补丁来解决这个问题。

添加代码

\usepackage{etoolbox}
\makeatletter
\patchcmd{\makecvhead} % <cmd>
  {\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}} % <search>
  {\ifthenelse{\isundefined{\@email}}{}{\makenewline\textcolor{mycolor}{\emailsymbol\emaillink{\@email}}}%
  } % <replace>
  {}{} % <success><failure>
\makeatother

到你的序言。因此,有了以下 MWE

\documentclass[10pt,a4paper,sans]{moderncv}

\moderncvstyle[right]{classic}
\moderncvcolor{burgundy}

\usepackage[utf8]{inputenc}
\usepackage[scale=0.8]{geometry}
\usepackage{setspace}
\usepackage{multicol}
\setlength{\hintscolumnwidth}{2.8cm}
\renewcommand*{\namefont}{\fontsize{24}{0}\bfseries\upshape}
\firstname{\vspace{2mm}John\vspace{2mm}}
\lastname{Doe}

\address{24 Groove Street, LA, USA}
\email{[email protected]}
\photo[50pt][1pt]{photo}

\definecolor{mycolor}{RGB}{0,0,0}
\phone[mobile]{\textcolor{mycolor}{+123456789}}

\usepackage{etoolbox}
\makeatletter
\patchcmd{\makecvhead} % <cmd>
  {\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}} % <search>
  {\ifthenelse{\isundefined{\@email}}{}{\makenewline\textcolor{mycolor}{\emailsymbol\emaillink{\@email}}}%
  } % <replace>
  {}{} % <success><failure>
\makeatother


\begin{document}

\makecvtitle

\end{document}

得到结果:

在此处输入图片描述

相关内容