cleveref 中的 \cpageref 生成错误标签

cleveref 中的 \cpageref 生成错误标签

下面的代码

\documentclass{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[american]{babel}

\usepackage[hidelinks]{hyperref}

\usepackage[nameinlink, capitalize, noabbrev]{cleveref}

\begin{document}

\begin{figure}[!htbp]
  %
  \caption{Sample.}
  \label{fig:sample}
  %
  \centering
  %
  Some nice picture goes here.
  %
\end{figure}

Some text referring to the stuff on \cpageref{fig:sample}.

\end{document}

产生结果:

在此处输入图片描述

这是cleveref软件包中的一个错误还是我忽略了一些非常明显的东西?

答案1

自 2018/02/08 起出现错误cleveref 0.21.1。2013 年的 0.19 版本可按预期运行。

一个小的解决方法是提取具有特征的超锚点refcount(无论如何加载hyperref)。

\documentclass[english]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}

\usepackage[hidelinks]{hyperref}

\usepackage[nameinlink, capitalize, noabbrev]{cleveref}



\renewcommand{\cpageref}[1]{%
  \IfRefUndefinedExpandable{#1}{}{%
    \hyperlink{\getrefbykeydefault{#1}{anchor}{??}}{Page \getpagerefnumber{#1}}%
  }%
}

\begin{document}

\begin{figure}%[!htbp]
  %
  \caption{Sample.} \label{fig:sample}
  %
  \centering
  %
  Some nice picture goes here.
  %
\end{figure}

Some text referring to the stuff on \cpageref{fig:sample}.

\end{document}

答案2

已在最新预发布版本(当前版本为 v0.21.3)中修复,可从以下网址获取我的网站

请注意,Stackexchange 不是错误跟踪器。请向 SE 发布问题;通过软件的正常错误报告渠道报告错误。(对于 ,请将普通电子邮件发送至软件包文档中提供的地址cleveref;对于更复杂的软件,请发送至 bugzilla/github/trac/whatever-bug-tracker-it-uses。)

错误报告是自由软件开发中与代码贡献一样宝贵的一部分。请务必先在 SE 上询问,但也不要忘记提交一份适当的错误报告!否则,它们可能会在 SE 上无人注意、无人喜欢和无人修复。

相关内容