装饰时保持 URL 可点击吗?

装饰时保持 URL 可点击吗?

我希望呈现的 PDF 中的 URL 显示如下:

<http://website/blah>

我已经使用“url”包在我的文档中声明了 URL,形式如下:

\url{https://tex.stackexchange.com/}

然后,我有以下命令:

\DeclareUrlCommand\url{\def\UrlLeft{<}\def\UrlRight{>}%
\urlstyle{tt}}

问题是,虽然这添加了 V 形,但 URL 在最终 PDF 中不再可点击。添加三角括号并使 URL 可点击的正确方法是什么?

答案1

命令\url可以像 一样重新定义hyperref。以下示例首先定义 url 命令\guilurl,它使用单个海鸠作为尖括号。然后\url使用 重新定义\guilurl

\documentclass{article}

\usepackage[T1]{fontenc}% \guilsinglleft and \guilsinglright
\usepackage{lmodern}
\usepackage{amstext}

\usepackage{hyperref}

\DeclareUrlCommand{\guilurl}{%
  \def\UrlLeft{\text{\guilsinglleft}}%
  \def\UrlRight{\text{\guilsinglright}}%
  \urlstyle{tt}%
}
\makeatletter
\DeclareRobustCommand*{\url}{%
  \hyper@normalise\guilurl@
}
\newcommand*{\guilurl@}[1]{%
  \hyper@linkurl{\guilurl{#1}}{#1}%
}
\makeatother

\begin{document}
\url{http://website/blah}
\end{document}

结果

相关内容