我喜欢使用自定义颜色的超链接
\usepackage[dvipsnames]{xcolor}
\usepackage{hyperref}
\hypersetup{
colorlinks=true,
linkcolor=NavyBlue,
filecolor=magenta,
urlcolor=cyan,
citecolor=MidnightBlue
}
并使用 插入多页 pdf 文档\usepackage{pdfpages}
。当只使用其中一个包时,它可以正常工作(没有错误)。
但是,当我包含这两个包时,出现以下错误:
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.7 \usepackage
{hyperref}
The package xcolor has already been loaded with options:
[]
There has now been an attempt to load it with options
[dvipsnames]
Adding the global options:
,dvipsnames
to your \documentclass declaration may fix this.
Try typing <return> to proceed.
我还有多个其他包,简单地添加并\documentclass[xcolor={dvipsnames}]{article}
不能解决问题,反而会导致更多错误。
hyperref
是什么原因造成的?是否有其他包或方法可以插入与兼容的 PDF 文档xcolor=dvipsnames
?
答案1
您报告的错误与 hyperref 无关。您肯定遇到过这种情况
\usepackage{pdfpages}
\usepackage[dvipsnames]{xcolor}
要解决这个问题
\usepackage[dvipsnames]{xcolor}
\usepackage{pdfpages}
因为其他包可能会在序言中尽早xcolor
加载。\usepackage[dvipsnames]{xcolor}
答案2
它通过添加\PassOptionsToPackage{dvipsnames}{xcolor}
前\usepackage{pdfpages}
后来\usepackage[dvipsnames]{xcolor}
工作\usepackage{hyperref}
;该解决方案基于 Ulrike Fischer 的评论。
像这样:
\usepackage[dvipsnames]{xcolor}
\usepackage{hyperref}
\hypersetup{...}
\PassOptionsToPackage{dvipsnames}{xcolor}
\usepackage{pdfpages}