区分印刷版本中的 \nameref 引用

区分印刷版本中的 \nameref 引用

我使用\nameref命令来引用标题名称等。我还使用了选项colorlinks=true,因此我有彩色的参考资料,可以与“普通”文本区分开来。

在我的打印版文档中,我将链接颜色设为黑色。现在我想将它们设置为斜体或者用撇号或类似的东西把它们围起来。

我已经尝试更新\nameref命令,但没有成功

\renewcommand{\nameref}{\emph{\nameref{#1}}}

我总是收到一条错误消息,上面写着

LaTeX 错误:\namref未定义。

有任何想法吗?

答案1

该选项自2011/02/05 v6.82a hidelinks起可用。可以按以下方式重新定义(假设不需要星号形式):hyperref\nameref

\documentclass{article}
\usepackage{hyperref}[2011/02/05]

\hypersetup{hidelinks}
\usepackage{letltxmacro}
\makeatletter
\AtBeginDocument{%
  \@ifdefinable{\myorg@nameref}{%
    \LetLtxMacro\myorg@nameref\nameref
    \DeclareRobustCommand*{\nameref}[1]{%
      \emph{\myorg@nameref{#1}}%
    }%
  }%
}
\makeatother

\begin{document}
\section{Hello World}
\label{sec:hello}
This is section \nameref{sec:hello}.
\end{document}

结果

答案2

从你所写的内容开始,我做了这个:

\newcommand{\Newnameref}[1]{\textit{\nameref{#1}}}

表示[1]该命令只需要一个输入,并且就是#1您在源文件中括号内写入的内容。

你可以像这样使用它:

\Newnameref{sec:section1}

这个对我有用 ;)

相关内容