下面的程式碼
\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
cleveref 0.21.1
從 2018/02/08 開始有一個錯誤。 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 上被忽視、不被愛、不被修復。