如何在 hyperref 中使用 \hypersetup 指定 RGB 颜色?

如何在 hyperref 中使用 \hypersetup 指定 RGB 颜色?

如何使用 指定 RGB 中的\hypersetup颜色hyperref

我知道这是使用颜色名称的正确方法:

\hypersetup{colorlinks,breaklinks,
            urlcolor=Maroon,
            linkcolor=Maroon}

但我想要的Teal,它hyperref无法识别。我知道Teal = {0 128 128}RGB,但以下代码无法编译:

\hypersetup{colorlinks,breaklinks,
            urlcolor={0 128 128},
            linkcolor={0 128 128}}

我尝试过使用逗号分隔符、比例值(例如0 < x < 1),但无济于事。正确的做法是什么?还请提及texdoc我应该阅读的正确内容以获取更多信息。

答案1

如果您确实希望在\hypersetup不加载(x)color包的情况下指定 RGB 颜色,您可以直接像这样输入它们:

\hypersetup{colorlinks,breaklinks,
            urlcolor=[RGB]{0,0.5,0.5},
            linkcolor=[RGB]{0,0.5,0.5}}

不过,正如 Ulrike 所说,加载xcolor通常是更舒适的方式。虽然对于您的问题来说可能有点过头了,但我通常这样做:

\usepackage[dvipsnames,svgnames,x11names,hyperref]{xcolor}

请注意,只要您不太担心名称冲突,就可以指定多个颜色名称空间(否则请阅读手册中有关此内容的规则xcolor)。由于您要加载xcolor以适应,因此请不要忘记在加载过程中hyperref包含该选项。[hyperref]

答案2

您必须先定义颜色名称。对于 Teal,则无需定义,因为它已在 中定义svgnam.def,因此您可以使用svgnames选项。

 \documentclass{book}
 \usepackage[svgnames]{xcolor}
 %\definecolor{Teal}{RGB}{0,128,128}
 \usepackage{hyperref}
 \hypersetup{colorlinks,breaklinks,
             urlcolor=Teal,
             linkcolor=Teal}
 \begin{document}
 \url{abc}
 \end{document}

相关内容