我一直对解决以下故障感到绝望:如果我将 hyperref 与 amsref 一起使用,那么所有\cite
指向参考书目的链接都会指向它们应该指向的位置的正下方。以下是一个具有不良行为的示例文档,还有一些没有此问题的其他链接。特别要注意第二页上的目标,它正是amsrefs.sty
(第 595-597 行)(显然)实现了其目标。
\documentclass{article}
\usepackage{hyperref}
\usepackage{amsrefs}
\begin{document}
\section{First}
\ref{s:second}, \hyperlink{text}{link}, \cite{testbib}
\newpage
\section{Second}
\label{s:second}
\csname hyper@anchorstart\endcsname{text}Text\csname hyper@anchorend \endcsname
\section{References}
\begin{biblist}
\bib{testbib}{article}{author={Ryan Reich},title={Title}}
\end{biblist}
\newpage
\end{document}
这个问题的原因是什么?这真的让我很烦。我问过这个问题,comp.text.tex
但没有收到有用的回复。希望这对这个网站有用。
答案1
给你,Ryan。这应该能帮你解决问题...
\usepackage{amsrefs}
\usepackage{hyperref}
\makeatletter
\renewcommand{\BibLabel}{%
\Hy@raisedlink{\hyper@anchorstart{cite.\CurrentBib}\relax\hyper@anchorend}%
[\thebib]%
}
\makeatother
\begin{document}...