Eu gostaria de ter o comportamento padrão do hyperref para todos os links, exceto os dos glossários: para eles, ainda deveriam ser links, mas sem bordas
Comecei a brincar com \hypersetup{linkbordercolor = white...
opções mas quando vi que o \cref também foi impactado pelas opções link* tentei comandos mais específicos:
\renewcommand*{\glstextformat}[1]{\hypersetup{linkbordercolor = white}{#1}\hypersetup{linkbordercolor = black}}
ou
\renewcommand*{\glsentryfmt}{
\hypersetup{linkbordercolor = white}\glshyperlink[\glsgenentryfmt]{\glslabel}\hypersetup{linkbordercolor = black}%
}
Mas esses comandos de renovação não fazem nada
ATUALIZAR
Eu estava usando arquivos externos para entradas de glossários e, na verdade, eram siglas e não entradas regulares. Portanto, minha solução e a fornecida não estavam funcionando devido à mistura de siglas e entradas regulares. Finalmente encontrei uma solução que -espero- esteja correta; então, se você pudesse revisá-lo, eu agradeceria muito. Thx:
\usepackage[linkbordercolor={black}]{hyperref}
[...]
\defglsentryfmt{%
\ifglsacronym%
\hypersetup{linkbordercolor = white}\glshyperlink[\glsgenacfmt]{\glslabel} %
\else
\hypersetup{linkbordercolor = white}\glshyperlink[\glsgenentryfmt]{\glslabel}%
\fi
}
Responder1
Isso funciona imediatamente para mim - o agrupamento de \glsentryfmt
não requer uma redefinição da cor do linkborder após o \glslabel
uso.
\documentclass{article}
\usepackage{xcolor}
\usepackage[linkbordercolor={black}]{hyperref}
\usepackage{cleveref}
\usepackage{glossaries}
\newglossaryentry{foo}{%
name={Foo},
description={A foobar}
}
\renewcommand*{\glsentryfmt}{%
\hypersetup{linkbordercolor = white}\glshyperlink[\glsgenentryfmt]{\glslabel}%
}
\makeglossaries
\begin{document}
\section{Foo} \label{FOO}
In \Cref{FOO} we saw that \gls{foo}
\clearpage
\printglossaries
\end{document}
AtualizarUma versão que utiliza \thepagecolor
(para o caso raro de cores de página não brancas)
\documentclass{article}
\usepackage{xcolor}
\usepackage{pagecolor}
\usepackage[linkbordercolor={black}]{hyperref}
\usepackage{cleveref}
\usepackage{glossaries}
\newglossaryentry{foo}{%
name={Foo},
description={A foobar}
}
\makeatletter
\renewcommand*{\glsentryfmt}{%
\hypersetup{linkbordercolor = \thepagecolor}\glshyperlink[\glsgenentryfmt]{\glslabel}%
}
\makeatother
\makeglossaries
\begin{document}
\pagecolor{yellow}
\section{Foo} \label{FOO}
In \Cref{FOO} we saw that \gls{foo}
\clearpage
\printglossaries
\end{document}