在生成的链接中,Autoref 带有可选参数文本

在生成的链接中,Autoref 带有可选参数文本

相关带有可选参数的 Autoref,我想为 \autoref 定义一个(可选)参数,该参数出现在常规 autoref 打印输出之后,但在 \autoref 生成的实际链接内。

即命令

\autoref[(left inset)]{fig:somefigure} 

应生成一个超链接,其中完整文本处于活动状态

... 图 1(左插图)...

以通用的方式这可能吗?

答案1

诀窍是始终使用非链接引用,然后单独添加超链接:(示例复制自 Christian Hupfers 对原始问题的回答)

\documentclass{article}

\usepackage{hyperref}
\usepackage{letltxmacro}
\usepackage{xparse}


\AtBeginDocument{%
  \LetLtxMacro\autoreforig\autoref
  \RenewDocumentCommand{\autoref}{som}{%
    \IfBooleanF{#1}{%
      \hyperref[#3]%
    }%
    {%
      \autoreforig*{#3}\IfValueT{#2}{#2}%
    }%
  }
}

\begin{document}

See \autoref[ is very nice]{section:foo} or \autoref*[ is nice too]{section:foobar}

\section{Foo section}\label{section:foo}

\section{Foo bar section}\label{section:foobar}

\end{document}

在此处输入图片描述

相关内容