使用自定义标签文本更改标记项目的链接颜色

使用自定义标签文本更改标记项目的链接颜色

我在以下页面中找到了代码:

https://joerglenhard.wordpress.com/2011/11/29/labeled-item-with-custom-label-text/

用作者自己的话来说:“一个项目列表,每个项目都\item带有标签,以便我以后可以引用它。我不想使用简单的数字标签,而是希望在标签的位置显示一些文本,并在引用标签的每个位置显示相同的文本“。

linkcolor在以下 MWE 中,由于包的hyperref为,自定义标签文本显示为红色red。我想要的是将自定义标签文本的颜色修改为绿色(整个文档),而不影响其他设置。

\documentclass{article}

\usepackage[colorlinks=true,pagebackref,
    linkcolor=red,
    urlcolor=blue,
    pdftitle={Dossier de Candidature, MCF60},
    pdfauthor={Dimitrios S. Anagnostou}]{hyperref}

\newcounter{reqcount}
\newcommand{\descitem}[1]{%
  \item[R\ref*{#1}] \refstepcounter{reqcount}\label{#1}
}
\newcommand{\descref}[1]{%
  \hyperref[#1]{R\ref*{#1}}%
}

\begin{document}

\section{foo:section}\label{foo:section}

\begin{itemize}
 \descitem{item:xyz} foo
 \descitem{item:abc} bar
\end{itemize}

As defined in \descref{item:xyz} and opposed to \descref{item:abc} of Section \ref{foo:section}.

\end{document}

在此处输入图片描述

因此,在这个例子中,R1 和 R2 应该是绿色,而 1 应该保持红色。

答案1

\documentclass{article}

\usepackage[colorlinks=true,pagebackref,
    linkcolor=red,
    urlcolor=blue,
    pdftitle={Dossier de Candidature, MCF60},
    pdfauthor={Dimitrios S. Anagnostou}]{hyperref}

\newcounter{reqcount}
\newcommand{\descitem}[1]{%
  \item[R\ref*{#1}] \refstepcounter{reqcount}\label{#1}
}
\makeatletter
\newcommand{\descref}[1]{%
  {\def\@linkcolor{green}\hyperref[#1]{R\ref*{#1}}}%
}
\makeatother
\begin{document}

\section{foo:section}\label{foo:section}

\begin{itemize}
 \descitem{item:xyz} foo
 \descitem{item:abc} bar
\end{itemize}

As defined in \descref{item:xyz} and opposed to \descref{item:abc} of Section \ref{foo:section}.

\end{document}

在此处输入图片描述

相关内容