\pageref 指向错误的页码

\pageref 指向错误的页码

我在使用 LaTeX 时遇到了一个小问题\pageref{}。我有一个相当大的文档,在结尾处我指向文本中的特定页面。使用hyperref,链接跳转到文档的正确部分,但实际页码不正确。

这与这个问题有点类似(但有点相反):

LaTeX 超链接转到错误页面

我在那里实现了解决方案(\refstepcounter{dummy}),但无济于事。\pagerefs 的目标通常是文本。 一个这样的例子是:

...these\refstepcounter{dummy}\label{s82:rclass} classifications are....

后来引用:

\S\ref{s82:richness}, p.\pageref{s82:rclass}

其中第一个引用是文本所在的部分。除了之外,我还使用以下内容(如果有帮助的话)hyperref

\documentclass[11pt]{book}

\usepackage[round]{natbib}

我应该注意到,这在文档开头时是可以正常工作的(我引用的是向前而不是向后,尽管我不确定这是否重要)。话虽如此,当我尝试在同一章中向前引用时,它也不起作用(文档是一篇论文)

非常感谢您的帮助。我想添加一个最小的工作示例,但对于我测试的小文档,引用工作正常。不过,我很想征求有关问题可能出在哪里的建议。

答案1

我认为你做了明显的检查:

  • 没有重新运行以获取正确的交叉引用在日志文件中,
  • 并且没有关于重复标签的警告。

你使用\pagenumbering{..}? 吗?(它应该仍然有效)。按照指示重新运行 LaTeX。理论上,你可能永远无法达到固定点,但这种情况不太可能发生。我不确定,但最多运行三次pdflatexbibtex足够了。

答案2

多年来我发现的标准问题是人们不了解标准 latex\label命令的范围,并且必须运行 2 次(或更多次)才能正确执行。下图是我用来向刚接触 latex 的人解释范围的图。也许可以把类似这样的内容放在 FAQ 或 Wiki 中 在此处输入图片描述

相关内容