LaTeX改变了使用hyperref和natbib宏包进行内文引用的颜色

25

我在我的LaTeX文档中使用了natbibhyperref包,并希望将超链接引用的方框颜色从绿色更改为更柔和的颜色(紫色或海军蓝)。然而,我使用建议的代码时,无法改变引用链接的颜色。 MWE:

\usepackage[usenames,dvipsnames]{color}
\usepackage[round]{natbib}
\usepackage[hyperfootnotes=false]{hyperref}
\hypersetup{
 colorlinks=false,
 citecolor=Violet,
 linkcolor=Red,
 urlcolor=Blue}

 \begin{document}

 \bibliographystyle{apsr}
 \bibliography{exp_final}
 \end{document}

然而,当我编译(我编译了多次以确保)时,我的pdf文件的外观与在\hypersetup中排除格式化的情况下看起来相同(仍然是相同的绿色)。我还想将脚注引用框起来。


1
你的代码示例中有两个\usepackage[hyperfootnotes=false]{hyperref}命令。你可以安全地删除其中一个——我猜这是复制/粘贴错误。 - Lohrun
1个回答

42

实际上,你提供的示例代码使用选项colorlinks=false来禁用链接着色。你应该使用以下hyperref设置命令来更改链接颜色。

\hypersetup{
  colorlinks,
  citecolor=Violet,
  linkcolor=Red,
  urlcolor=Blue}

要改变链接和引用周围框的颜色,您有以下其他选项:

\hypersetup{
  citebordercolor=Violet,
  filebordercolor=Red,
  linkbordercolor=Blue
}

PDF链接边框的宽度(外观)由pdfborder选项控制。如果设置了colorlinks选项,则框将被禁用(有关更多信息,请参见hyperref手册)。


我忘了提到这些选项的一些奇怪之处。我记得通过将边框宽度设置为0来停用框,但只有在使用Acrobat Reader(任何操作系统)时才有效。当我通常使用xpdf或evince时,框仍然可见。 - Lohrun
2
谢谢!不过,我发现颜色格式应该是RGB:所以应该是 \hypersetup{ citebordercolor=.1 .1 1, linkbordercolor=0 0 1, urlbordercolor=.9 .1 0, }还是谢谢! Thomas - Thomas
1
实际上,颜色名称完全可以使用。 另外,请考虑接受答案为正确的,如果它起作用了。 - recluze
6
信息:在使用usepackage选项时,大写的urlcolor=Blue对我无效。而小写的urlcolor=blue有效。 - K.-Michael Aye
2
超链接手册的链接不再有效。此外,我使用Blue、blue或者0 0 1、.1 . 1 .1或.9 .1 0、Red或red或Violet或violet时出现错误。 - Nike
1
这些设置不起作用,文档链接已损坏。 - baxx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接