hyperref 中链接外观的选项

hyperref 中链接外观的选项

如果我使用

\usepackage[colorlinks]{hyperref}

我得到了彩色链接\cite(不适合打印甚至查看)但目录看起来不错。

如果我使用

\usepackage[colorlinks=false]{hyperref}

我得到了\cite 带有彩色框架的黑色链接(这看起来非常好)但目录看起来很奇怪,有超长的框。

我还有其他选择吗?您可以在文档的不同部分使用两种样式吗?

如何使目录中的页码成为链接而不是章节标题?

答案1

您可以自定义这方面的几乎任何东西,直至隐藏所有链接(无颜色,无框架,只有纯黑色文本)hidelinks

如果你使用,colorlinks=true你可以设置(默认值为[]):

  • linkcolor [红色的]
  • anchorcolor[黑色的]
  • citecolor [绿色的]
  • filecolor [青色]
  • menucolor [红色的]
  • runcolor [青色 - 与文件颜色相同]
  • urlcolor [品红]
  • allcolors-- 如果您想将所有链接设置为相同颜色,请使用此项

如果您希望其中一些不带颜色,只需将它们设置为.(例如citecolor=.),它将使用链接出现位置的文本的颜色。

如果您使用colorlinks=false并因此想要链接周围的框架,您可以访问以下设置:

  • citebordercolor[RGB 0 1 0]
  • filebordercolor[RGB 0.5.5]
  • linkbordercolor[RGB 1 0 0]
  • menubordercolor[RGB 1 0 0]
  • urlbordercolor[RGB 0 1 1]
  • runbordercolor[RGB 0.7.7]
  • allbordercolors

同样,如果您希望其中一些不出现,请将它们设置为白色。

对于您来说,如果您希望在引文中的链接周围而不是在目录中(因此也不在图形、表格或脚注等其他链接上)使用框架,我建议您\hypersetup至少进行以下配置:

\usepackage{hyperref}
\hypersetup{
    colorlinks = false,
    linkbordercolor = {white},
    <your other options...>,
}

答案2

非常有用的讨论。谢谢。只有一个小评论

如果您希望其中一些不带颜色,只需将它们设置为。(例如citecolor=.),它将使用链接出现位置的文本的颜色。

我发现(MiKTeX,截至 2019 年 2 月)[linkcolor=]导致它跟随文本颜色,但[linkcolor=.]导致错误。

答案3

ArTourter已经给出了很好的答案。

解决您剩余的问题:

文档的不同部分可以有两种样式吗?

是的,例如,如果你不想要目录框,你可以本地隐藏链接:

\begingroup
  \hypersetup{hidelinks}
  \tableofcontents
\endgroup

如何使目录中的页码成为链接而不是章节标题?

根据手册,你有两个选择

选项 类型 默认 描述
链接目录 文本 部分 使文本 (section)、页码 (page)、两者 (all) 或无 (none) 成为 TOC、LOF 和 LOT 上的链接
鏈接至頁面 布尔值 错误的 制作页码,而不是文本,在 TOC、LOF 和 LOT 上制作链接

因此你可以使用

\usepackage[linktoc=page]{hyperref}

或其变体。(您也可以在超设置中使用它,例如这个答案

相关内容