如何在 hyperref 中将词汇表条目与章节引用分开

如何在 hyperref 中将词汇表条目与章节引用分开

我有一份文档、一份词汇表和参考资料。我正在使用 hyperref 包创建超链接

\usepackage[colorlinks = true,
        linkcolor = red,
        urlcolor  = green,
        citecolor = blue,
        anchorcolor = blue]{hyperref}

显然,linkcolor 将词汇表条目和章节/表格/图形编号都标记为红色。

有没有办法分割这个?(实际上,我希望用蓝色表示链接,用普通黑色表示词汇表条目。)

答案1

glossariesv4.08 开始,执行实际超链接的命令是\glsdohyperlink。默认定义是

\newcommand*{\glsdohyperlink}[2]{\hyperlink{#1}{#2}}

当使用 启用超链接时\glsenablehyper,用于超链接的内部命令将设置为\glsdohyperlink。 (在早期版本中,它直接设置为\hyperlink。)这意味着如果您想调整超链接,您可以重新定义\glsdohyperlink然后使用\glsenablehyper(而不必摆弄内部命令。)例如:

% arara: pdflatex
% arara: makeglossaries
% arara: pdflatex
% arara: bibtex
% arara: pdflatex
% arara: pdflatex
\documentclass{article}

\usepackage[colorlinks = true,
        linkcolor = red,
        urlcolor  = green,
        citecolor = blue,
        anchorcolor = blue]{hyperref}
\usepackage{glossaries}

\makeglossaries

\newglossaryentry{sample}{name={sample},description={an
example~\cite{article-minimal}}}

\renewcommand*{\glsdohyperlink}[2]{%
 {\hypersetup{linkcolor=black}\hyperlink{#1}{#2}}}

\glsenablehyper

\begin{document}

\section{Sample}
\label{sec:sample}

A \gls{sample} entry in section~\ref{sec:sample}.

\printglossaries

\bibliographystyle{plain}
\bibliography{xampl}

\end{document}

\glstext这对其他词汇表输入命令(如或)有效,\glslink但不适用于位置列表中的链接。以上结果为:

image of document

因此,引用链接为蓝色,交叉引用(包括位置交叉引用)为红色,词汇表条目链接为黑色。

相关内容