我使用biber
,backref
但backref
指向错误的页面。选项backref
总是会出错。
为什么会这样?我该如何解决这个问题?
以下内容可能与该问题相关:
\usepackage[backend=biber,backref,style=authoryear,isbn=false,dashed=true]{biblatex}
\usepackage[%
colorlinks,urlcolor = black,pdfpagelabels,pdfstartview = FitH,
bookmarksopen = true,bookmarksnumbered = true,linkcolor = black,
plainpages = false,hypertexnames = false,citecolor = black
]{hyperref}
\thispagestyle{empty}
\tableofcontents
\clearpage
%start counting afresh after toc
\setcounter{page}{2}
答案1
这没有答案为什么 backref
指向错误的页面,但它仍然可以解决您的问题。
不要手动重置页码计数器,而是使用不同的页码:
\pagenumbering{roman}
(或Roman
或alph
或Alph
)用于前言,如果您不喜欢,可以使用不打印页码的页面样式。(您已经使用了\thispagestyle{empty}
,\pagestyle{empty}
可以使用。)\pagenumbering{arabic}
\clearpage
(双面文档:)之后cleardoublepage
为主要内容
plainpages=false
为包提供选项hyperref
,以便hyperref
将示例页面ii
和2
视为不同的页面。(您已经在示例中这样做了,我只是想明确地提到这一点,以便其他可能面临类似问题的用户能够理解。)
当您在 Adobe Reader Edit > Preferences > Page Display > Page Content and Information > Use logical page numbers
(或您首选的 PDF 查看器中的等效程序)中使用时,它将显示页面“名称”和页码。例如,前言中有 10 页,名称为 i 到 x,页面“5”是第 15 页,阅读器显示“5(15 of ...)”,其中“...”是总页数。这还有一个好处,即在那里输入“5”确实会将您带到名为“5”的页面,而不是第五页(名为“v”)。
答案2
简单的解决方案:hyperref选项hypertexnames
必须设置为true
(默认值)。
当您看到以下错误消息时...
(pdfTeX 警告(ext4):具有相同标识符(
name{page.1}
)的目标已经被使用,重复项被忽略)。
...您肯定会使用\pagestyle{empty}
而不更改编号。解决方法:使用文档中其他地方未使用的页码。在这里,我\pagenumbering{Alph}
在之后使用了\begin{document}
。