我有一份文档、一份词汇表和参考资料。我正在使用 hyperref 包创建超链接
\usepackage[colorlinks = true,
linkcolor = red,
urlcolor = green,
citecolor = blue,
anchorcolor = blue]{hyperref}
显然,linkcolor 将词汇表条目和章节/表格/图形编号都标记为红色。
有没有办法分割这个?(实际上,我希望用蓝色表示链接,用普通黑色表示词汇表条目。)
答案1
从glossaries
v4.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
但不适用于位置列表中的链接。以上结果为:
因此,引用链接为蓝色,交叉引用(包括位置交叉引用)为红色,词汇表条目链接为黑色。