在下面的代码中,命令\label{my}
出现在第 4 页,也\pageref{my}
显示“4”,但超链接指向第 1 页。这是为什么呢?
\documentclass{book}
\usepackage{hyperref}
\usepackage{lipsum}
\begin{document}
% Four pages of text.
\lipsum[1-20]
% The label is on fourth page.
\label{my}
% Buggy pageref. It produces the number 4, but the link leads to the first page.
\pageref{my}
\end{document}
答案1
这不是一个错误;没有锚点;\label
它本身不会放置超链接锚点,因此显然您的超链接不会将您带到放置的位置\label
;您可以使用它\phantomsection
在给定位置创建锚点:
\documentclass{book}
\usepackage{hyperref}
\usepackage{lipsum}
\begin{document}
\lipsum[1-20]
\phantomsection\label{my}\newpage
\pageref{my}
\end{document}