
Я использую этот acronyms
пакет для определения математических символов следующим образом:
\begin{acronym}[long]
\acro{v}[$\vec{v}$]{View direction vector}
\end{acronym}
Я делаю это со многими другими, где это быстрее печатать, \acs{<short>}
чем вводить длинные математические выражения.
Когда я использую это, hyperref
пакет форматирует вывод в определенном цвете. Мне это нравится для аббревиатур, таких как GPS, когда я хочу, чтобы читатель видел, что короткая версия кликабельна. Для них я использую другой список аббревиатур, похожий на тот, что выше.
Но я не хочу, чтобы математические выражения были закрашены в уравнениях, потому что это нарушит читаемость, если некоторые из них будут определены как аббревиатуры, а другие будут написаны вручную.
Теперь мой вопрос: Могу ли я заставить hyperref удалить цвет ссылок из определенного списка аббревиатур?Или можно ли отключить подсветку ссылок для математического режима?
Это мой первый вопрос здесь, надеюсь, я ясно изложил свою проблему :-)
Добавлен пример: (Я использую classicthesis и arsclassica, которые делают ссылки цветными, но не имеет значения, откуда берутся цвета)
\documentclass{scrreprt}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% REQUIRED FOR ARSCLASSICA
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{subfig}
\usepackage[strict]{changepage}
\usepackage[parts,dottedtoc,eulerchapternumbers,subfig,beramono,pdfspacing] {classicthesis}
\usepackage{arsclassica}
% hyperref and acronym
\usepackage{hyperref}
\usepackage{acronym}
\begin{document}
\chapter{Text}
Some text where I want to have \ac{BRDF} as a visibly colored link and in
an equation would not want the symbol to be a colored link.
\begin{equation}
\acs{fBRDF} = \dots
\end{equation}
However it would be nice if it still was a link. It just should not have
any color.
% Two acronym lists
\chapter{List of Abbreviations}
\begin{acronym}[GPS]
\acro{BRDF}{Bidirectional Reflectance Distribution Function}
\acro{RGB}{Red, Green, Blue}
\end{acronym}
\chapter{List of Symbols}
\begin{acronym}[$f(\vec{l},\vec{v})$]
\acro{fBRDF}[$f(\vec{l},\vec{v})$]{\acf{BRDF}}
\end{acronym}
\end{document}
решение1
Можно временно задать цвет ссылки внутри среды на другое значение (отличное от указанного ранее), а затем восстановить его до исходного значения.
Я использовал xpatch
пакет для добавления кода изменения цвета после запуска среды equation
(макрос \equation
) и для обратного переключения после \endequation
(что \end{equation}
фактически).
Для большего удобства я определил команды \DefaultDocumentLinkColor
и \DefaultDocumentEquationLinkColor
для хранения названий цветов.
Однако ссылка на уравнение не распознается как таковая при использовании обычного цвета текста.
\documentclass{scrreprt}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% REQUIRED FOR ARSCLASSICA
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{subfig}
\usepackage[strict]{changepage}
\usepackage[parts,dottedtoc,eulerchapternumbers,subfig,beramono,pdfspacing]{classicthesis}
\usepackage{arsclassica}
% hyperref and acronym
\usepackage{xpatch}
\newcommand{\DocumentDefaultLinkColor}{blue}
\newcommand{\DocumentDefaultEquationLinkColor}{black}
\usepackage{hyperref}
\usepackage{acronym}
\hypersetup{linkcolor={\DocumentDefaultLinkColor}}
\xapptocmd{\equation}{\hypersetup{linkcolor={\DocumentDefaultEquationLinkColor}}}{}{}%
\xapptocmd{\endequation}{\hypersetup{linkcolor={\DocumentDefaultLinkColor}}}{}{}%
\begin{document}
\chapter{Text}
Some text where I want to have \ac{BRDF} as a visibly colored link and in
an equation would not want the symbol to be a colored link. See \ref{listofsymbols}
\begin{equation}
\acs{fBRDF} = \dots
\end{equation}
However it would be nice if it still was a link. It just should not have
any color.
% Two acronym lists
\chapter{List of Abbreviations}
\begin{acronym}[GPS]
\acro{BRDF}{Bidirectional Reflectance Distribution Function}
\acro{RGB}{Red, Green, Blue}
\end{acronym}
\chapter{List of Symbols} \label{listofsymbols}
\begin{acronym}[$f(\vec{l},\vec{v})$]
\acro{fBRDF}[$f(\vec{l},\vec{v})$]{\acf{BRDF}}
\end{acronym}
\end{document}