我正在使用缩写包(在 classicthesis 中),并尝试选择性地更改缩写列表中缩写全名的超链接颜色,同时保留 hyperref 中为缩写列表中的缩写以及文本内缩写实例设置的标准超链接颜色。因此,我希望避免在缩写列表中看到整页彩色文本的视觉体验。
类似的问题也曾在 无特殊颜色的首字母缩略词超链接 以及在 classicthesis 中,将首字母缩略词超链接颜色更改为黑色,但将交联保留为蓝色。
然而,答案似乎只是删除了文内首字母缩略词超链接的颜色,而保持首字母缩略词列表中的缩写和全名超链接的颜色不变。
我想避免使用缩写选项“nohyperlinks”,因为它会以没有超链接为代价删除颜色。
以下是 MWE:
\documentclass{article}
\usepackage{acronym}
\usepackage[colorlinks=true]{hyperref}
% This solution (see linked questions) only removes hyperlink colour from the
% in-text acronym, but not from the acronyms listed in the acronym environment
\makeatletter
\AtBeginDocument{%
\renewcommand*{\AC@hyperlink}[2]{%
\begingroup
\hypersetup{hidelinks}%
\hyperlink{#1}{#2}%
\endgroup
}%
}
\makeatother
\begin{document}
% in-text acronym
\ac{foo} and \ac{foo}
% acronym list in the acronym environment
\begin{acronym}
\acro{foo}[FB]{FooBar}
\end{acronym}
\end{document}
同样,与上述解决方案相反,我只想删除首字母缩写词列表中的超链接颜色,理想情况下只删除全名(首字母缩写词和全名都不着色也可以)。
提前谢谢了!
答案1
我遇到了完全相同的问题。这是我的简单但粗暴的方法:
在acronym
环境中,您可以定义一个新命令来控制我需要的文本颜色:
...
\begin{acronym}
% Define a new command `blacro` to print the long form in black
\newcommand{\blacro}[2]{\acro{#1}{\color{black}#2}}
% Make sure to use the newly defined command
\blacro{foo}[FB]{FooBar}
\end{acronym}
这种通过以您想要的颜色渲染第二个参数来修饰原始命令(我正在使用\color{black}
)。您可以添加另一个参数,以便定义适用于任何颜色的更通用的命令。
我还没有用你的例子测试过它,但它在 Classic Thesis 中对我来说是有效的。