如何使 hyperref 中的*一個*特定連結/引用變色?

如何使 hyperref 中的*一個*特定連結/引用變色?

讀完後超引用文檔,我使用以下方法為 hyperref 設定了幾個著色選項:

\usepackage[colorlinks, 
            linkcolor={blue!50!black}, 
            citecolor={blue!50!black}, 
            urlcolor={blue!50!black}]{hyperref} 

所有連結、參考文獻現在都如預期著色。

問題是我也發現有些有顏色的地方不合要求。我要么想要消除顏色或顏色不同。

例如,標題頁,精心設計的其餘顏色受到我確實想連結的少數電子郵件地址的干擾。

請注意,我想保留鏈接,但僅針對其餘鏈接對它們進行著色/變色。有辦法做到嗎?

我想任何有能力的解決方案都應該有效著色/變色特定的文字元素,覆蓋稍後將在全球範圍內應用的格式/顏色。

答案1

從可用的答案hyperref 在目錄中本地更改連結顏色本地禁用顏色鏈接或僅針對目錄禁用顏色鏈接,這是我自己OP更具體的答案。

希望它比上面的更容易理解和可達。 (特別是對於以下問題目錄-特定的,這可能是我一開始沒有找到的原因)


主要要點是,它用於在外部\hypersetup{}設定包的任何選項hyperref\usepackage[..]{hyperref}呼叫的任何選項,不僅在標頭內全域工作,而且還本地在正文主體內。因此用大括號包圍,它將這些選項應用於任何文字區塊。

據此,具體解決方案為著色問題是使用如下的東西。

對於變色:

{\hypersetup{hidelinks}<TEXT-OF-INTEREST>}

對於不同的顏色:

{\hypersetup{allcolors=<COLOR-OF-UR-WISH>}<TEXT-OF-INTEREST>}

一些分別包含電子郵件、帶有錨點的 URL、URL、引文、參考文獻、整個目錄或整個部分的範例:

<TEXT-OF-INTEREST>  =  \href{mailto:[email protected]}{[email protected]} 
<TEXT-OF-INTEREST>  =  \href{www.URL.com}{anchor-text} 
<TEXT-OF-INTEREST>  =  \url{www.URL.com} 
<TEXT-OF-INTEREST>  =  \cite{XYZ}
<TEXT-OF-INTEREST>  =  \ref{XYZ}
<TEXT-OF-INTEREST>  =  \tableofcontents
<TEXT-OF-INTEREST>  =  \section{....} ....... block of text .....

感謝@Torbjørn T。


如果經常需要或不需要,您可能更願意將其用作使用者命令

對於變色:

\newcommand{\discolorlinks}[1]{{\hypersetup{hidelinks}#1}}

用法:\discolorlinks{<TEXT-OF-INTEREST>}

對於不同的顏色:

最通用的一個(作為\textcolor在強制使用特定顏色的上下文中全部文字區塊中的連結/url/引用(可根據需要使用citecolorurlcolor、等選項自訂更多內容linkcolor):

\newcommand{\colorlinks}[2]{{\hypersetup{allcolors=#1}#2}}

用法範例:\colorlinks{red}{<TEXT-OF-INTEREST>}

相關內容