引用中不存在超链接

引用中不存在超链接

(我不确定这个帖子标题是否足够好)

我正在使用biblatex并按biber部分打印参考书目refsection=part

下面的 MWE 会产生一个警告hyperref

name{cite.0@foo} has been referenced but does not exist, replaced by a fixed one

我认为这是因为第一部分之前没有参考书目,所以引用链接指向毫无意义的地方。

我想解决这个问题,因为它是唯一的警告在我的文件中!!

平均能量损失

% arara: pdflatex
% arara: biber
% arara: pdflatex
% arara: pdflatex
\documentclass{report}
\usepackage{filecontents}
\begin{filecontents}{foo.bib}
@book{foo,
author = {author},
title = {title},
date = {2019},
}
\end{filecontents}

\usepackage[backend=biber, refsection=part, citestyle=alphabetic, backref=true, style=alphabetic]{biblatex}
\addbibresource{foo.bib}

\defbibheading{bibliography}{%
  \cleardoublepage
  \chapter*{\bibname\ of \thepart}%
  \thispagestyle{plain}%
}

\usepackage{hyperref}

\begin{document}
By \cite{foo}
\part{title}
Again by \cite{foo}
\printbibliography
\end{document}

答案1

下面是一个更简单的例子。是的,您会收到警告,因为链接没有目标。一种解决方案是在某处提供目标\hypertarget(或通过在此引用部分中添加)\printbibliography。另一种解决方案是使用不创建链接的引用命令。

\documentclass{report}

\usepackage[]{biblatex}
\addbibresource{biblatex-examples.bib}

\usepackage{hyperref}

\begin{document}
By  \cite{doody}

%\hypertarget{cite.0@doody}{}
\end{document}

相关内容