No hay bordes de hipervínculos para ningún tipo de entradas de glosario, pero aún así están hiperreferidos.

No hay bordes de hipervínculos para ningún tipo de entradas de glosario, pero aún así están hiperreferidos.

Me gustaría tener el comportamiento predeterminado de hiperreferencia para todos los enlaces excepto los de los glosarios: para ellos, deberían seguir siendo enlaces pero sin bordes.

Empecé a jugar con \hypersetup{linkbordercolor = white...las opciones, pero cuando vi que \cref también se veía afectado por las opciones de enlace*, probé comandos más específicos:

\renewcommand*{\glstextformat}[1]{\hypersetup{linkbordercolor  = white}{#1}\hypersetup{linkbordercolor  = black}}

o

\renewcommand*{\glsentryfmt}{
\hypersetup{linkbordercolor  = white}\glshyperlink[\glsgenentryfmt]{\glslabel}\hypersetup{linkbordercolor  = black}%
}

Pero esos comandos de renovación no hacen nada.

ACTUALIZAR

Estaba usando archivos externos para las entradas de los glosarios y, de hecho, eran acrónimos, no entradas normales. Entonces mi solución y la que di no funcionaban debido a la combinación de acrónimos y entradas regulares. Finalmente encontré una solución, que -espero- sea correcta; así que si pudieras revisarlo te lo agradecería mucho. Gracias:

\usepackage[linkbordercolor={black}]{hyperref} 

[...]

\defglsentryfmt{% 
\ifglsacronym%
\hypersetup{linkbordercolor  = white}\glshyperlink[\glsgenacfmt]{\glslabel} %
\else
\hypersetup{linkbordercolor  = white}\glshyperlink[\glsgenentryfmt]{\glslabel}%
\fi
}

Respuesta1

Esto funciona de inmediato para mí: la agrupación de \glsentryfmtno requiere restablecer el color del borde del enlace después de que \glslabelse haya utilizado.

\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}

ingrese la descripción de la imagen aquí

ActualizarUna versión que utiliza \thepagecolor(en el raro caso de colores de página que no sean blancos)

\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}

información relacionada