Использование параметра linkcolor в hyperref

Использование параметра linkcolor в hyperref

Этот вопрос опубликован как запрошенное продолжениеварианты внешнего вида ссылок в hyperref, чтобы прояснить некоторые странности в поведении hyperref.

В приведенном ниже фрагменте обе команды \usepackage работают, но linkcolor=.выдают ошибку при совместном использовании сcolorlinks=true (текст ошибки показан в конце сообщения).

\documentclass{article}

\usepackage[colorlinks=true,linkcolor=]{hyperref}
%\usepackage[linkcolor=.]{hyperref}

\begin{document}

See Figure~\ref{fig}

\begin{figure}
        \caption{This is an empty figure \label{fig}}
\end{figure}
\end{document}

Если я использую линию

\usepackage[colorlinks=true,linkcolor=.]{hyperref}

(обратите внимание на точку), я получаю текст ошибки:

Ошибка LaTeX: Неопределенный цвет

и ошибка возникает сразу после закрывающей скобки\ref{}

Эффект, которого я хотел добиться, заключался в том, чтобы убрать рамки вокруг ссылок и оставить все текстовые цвета ссылок, кроме фактических URL-адресов, поэтому, когда я использовал эту команду, у меня также были urlcolor=blueпараметры, но это не было необходимо для воспроизведения ошибки. Но следующая строка сработала, в том смысле, что все ссылки, кроме URL-адресов, были невидимыми:

\usepackage[colorlinks=true,urlcolor=blue,linkcolor=]{hyperref}

Использование MiKTeX-pdfTeX 2.9.6959 (1.40.20) (MiKTeX 2.9.6960) на Windows 10

решение1

linkcolor=.вызывает ошибку hyperref\color{.}

который производит

LaTeX Error: Undefined color `.'

поскольку в стандартном colorпакете, загруженном с помощью hyperref.

Вы, возможно, имеете в виду xcolorсинтаксис пакета, где .означает текущий цвет

\usepackage{xcolor}
\usepackage[colorlinks=true,linkcolor=.]{hyperref}

работает, хотя указание цветных ссылок таким образом кажется немного странным выбором, а не просто указание границы ссылки шириной 0.

решение2

Подводя итог, как отмечено выше, добавим

\usepackage{xcolor}

исправляет проблему с использованием точки в параметрах hyperref. Есть и другие способы получить желаемый результат, которые также не приводят к ошибкам; спасибо другим авторам.

Возможно, hyperref должен загружать xcolor вместо color?

Связанный контент