这是我的第一个问题,如果我需要在问题中添加更多信息,请告诉我。
我正在使用 Springer 模板 svjour3 准备一篇论文。由于参考文献显示方式的特殊性,在创建 .bib 文件后,我直接将 .bbl 文件的结果设置到 .tex 文件中。到目前为止一切顺利,它们显示正确。
我使用 natbib 将参考文献的引用显示为与所引用论文/书籍相关的年份。以及常用的 hyperref 包。
但是我无法使 hyperref 与任何 natbib 标签正常工作(我正在使用 citeyearpar 但任何其他 natbib tah 都会产生相同的错误结果)。
以下是示例代码:
\RequirePackage{fix-cm}
\documentclass[smallextended]{svjour3}
\usepackage{graphicx}
\usepackage{amsfonts}
\usepackage{mathtools}
\usepackage{url}
\usepackage[round,authoryear]{natbib}
\setcitestyle{round,authoryear}
\usepackage{xxcolor}
\usepackage[colorlinks=true, linkcolor=blue, urlcolor=blue, citecolor = blue]{hyperref}
\setlength{\textwidth}{\dimexpr\pdfpagewidth-2in}
\setlength{\textheight}{\dimexpr\pdfpageheight-2in}
\journalname{ZZZZZ}
%
\begin{document}
\section{Introduction}
\label{intro}
This is a link to example \citeyearpar{example}.
\begin{thebibliography}{22}
\providecommand{\natexlab}[1]{#1}
\providecommand{\url}[1]{\texttt{#1}}
\expandafter\ifx\csname urlstyle\endcsname\relax
\providecommand{\doi}[1]{doi: #1}\else
\providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi
\bibitem[AF et~al.(2012)AF, AD, and M]{example}
XXX XX, YYYY YY, ZZZZZ Z (2012)
\newblock AIUEO.
\newblock BBBBBB 000(1111):123--345
\end{thebibliography}
\end{document}
% end of file tex
该代码产生以下结果(pdf):
一方面,我可以看到 natbib 已经能够用参考文献的年份替换引用。另一方面,我可以看到 hyperref 已将超链接的颜色更改为蓝色,因此它能够检测到它确实是引用。但我无法单击它,它不是活动的超链接。
我一直在检查有关 hyperref 和 natbib 的其他问题,但我找不到类似的内容。
我做错了什么?我已经为此绞尽脑汁三天了。我需要某种“宏”来使 natbib 和 hyperref 兼容吗?非常感谢。
PD1:我正在使用 LEd 编辑器...根据评论,问题可能出在编辑器的 pdf 编译器上,而不是代码本身。仍在检查。
答案1
感谢您的宝贵反馈。是编辑!LED 已经过时了,但 MiKTex 2.9 做得非常好。我会尽快关闭这个问题。