用語集のエントリにハイパーリンクの境界線はありませんが、ハイパー参照されています

用語集のエントリにハイパーリンクの境界線はありませんが、ハイパー参照されています

用語集からのリンクを除くすべてのリンクに、ハイパーリファレンスのデフォルトの動作を適用したいと思います。用語集からのリンクは、境界線のないリンクのままである必要があります。

私はオプションを試し始めました\hypersetup{linkbordercolor = white...が、\cref も link* オプションの影響を受けることがわかったので、より具体的なコマンドを試しました。

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

または

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

しかし、これらの更新コマンドは何もしません

アップデート

私は用語集のエントリに外部ファイルを使用していましたが、実際にはそれらは通常のエントリではなく頭字語でした。そのため、私の解決策と提示された解決策は、頭字語と通常のエントリが混在していたため機能しませんでした。最終的に解決策を見つけました。それが正しいことを願っています。レビューしていただければ幸いです。ありがとうございます。

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

[...]

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

答え1

これは私にとってはすぐに使えます。 のグループ化では、を使用した\glsentryfmt後にリンク境界の色をリセットする必要はありません。\glslabel

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

ここに画像の説明を入力してください

アップデート\thepagecolor(まれに白以外のページカラーの場合)を使用するバージョン

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

関連情報