过去我使用钩子\usepackage{hyperref}
时\AtEndPreamble{}
没有问题。至少我认为如此。但是,最近钩子破坏了我的参考书目的链接。这是错误还是我做错了?我在自定义类文件中使用钩子,但在主文档文件中加载了其他包,并希望在序言末尾保持对 hyperref 的加载。
在以下 MWE 中,没有钩子一切正常,而有了钩子链接就消失了。
\begin{filecontents}{bla.bib}
@article{Orwell,
author = "George Orwell and Aldous Huxley and William Shakespeare and Oscar Wilde",
title = "1984",
year = "1948",
journal = "Books about big brothers",
}
\end{filecontents}
\documentclass{article}
\usepackage[style=alphabetic]{biblatex}
\addbibresource{bla.bib}
\AtEndPreamble{
\usepackage{hyperref}
}
\begin{document}
\cite{Orwell}
\printbibliography
\end{document}
答案1
在这种情况下,您需要手动激活 biblatex 对 hyperref 的支持:
\begin{filecontents}{bla.bib}
@article{Orwell,
author = "George Orwell and Aldous Huxley and William Shakespeare and Oscar Wilde",
title = "1984",
year = "1948",
journal = "Books about big brothers",
}
\end{filecontents}
\documentclass{article}
\usepackage[style=alphabetic,hyperref=manual]{biblatex}
\addbibresource{bla.bib}
\AtEndPreamble{
\usepackage{hyperref}
\BiblatexManualHyperrefOn
}
\begin{document}
\cite{Orwell}
\printbibliography
\end{document}