尝试将引文标注显示为数字时,Elsevier 模板编译出现错误

尝试将引文标注显示为数字时,Elsevier 模板编译出现错误

我正在使用 Elsevier 的文章文檔類別。

我的书目出现以下错误(输出.aux):

Package natbib Error: Bibliography not compatible with author-year citations.
(natbib)                Press <return> to continue in numerical citation style.

重现该错误的最小代码是:

\documentclass[times,twocolumn,final,authoryear]{elsarticle}

\usepackage{prletters}
\usepackage{framed,multirow}
\usepackage{amssymb}
\usepackage{latexsym}
\usepackage{amsmath}
\usepackage{url}
\usepackage{xcolor}
\definecolor{newcolor}{rgb}{.8,.349,.1}

\journal{Pattern Recognition Letters}

\begin{document}

\cite{Brodatz1966}

\bibliographystyle{elsarticle-num}
\bibliography{refs}

\end{document}

每当我改变\bibliographystyle{elsarticle-num}行至\bibliographystyle{elsarticle-harv}或者\bibliographystyle{elsarticle-num-names}错误消失,它正常工作,但引用的格式不是我想要的。我试图把它放在方括号里,比如[23],但 elsarticle-harv 的结果类似布罗达兹 (1966)

refs.bib 文件包含 Brodatz1966 引用:

@BOOK{Brodatz1966,
  title = {Textures: a photographic album for artists and designers},
  publisher = {Dover Publications},
  year = {1966},
  author = {Brodatz, P.},
  series = {Dover pictorial archives},
  lccn = {66024124}
}

任何帮助都将不胜感激。提前致谢。

答案1

由于您要创建数字样式的引用标注,因此您不应该authoryear在此\documentclass阶段指定该选项。

authoryear选项被传递给natbib引文管理包。由于elsarticle-num参考书目样式(毫不奇怪……)旨在创建数字样式而不是作者年份样式的引文标注,因此会生成错误消息。

完整的 MWE:

enter image description here

\RequirePackage{filecontents}
\begin{filecontents}{refs.bib}
@BOOK{Brodatz1966,
  title = {Textures: a photographic album for artists and designers},
  publisher = {Dover Publications},
  year = {1966},
  author = {Brodatz, P.},
  series = {Dover pictorial archives},
  lccn = {66024124}
}
\end{filecontents}

\documentclass[times,twocolumn]{elsarticle}
\bibliographystyle{elsarticle-num}
%%%\usepackage{prletters} % I don't seem to have this package
\usepackage{amssymb}
%%%\usepackage{latexsym}  % <-- don't load latexsym if you load amssymb
\journal{Pattern Recognition Letters}

\begin{document}
\cite{Brodatz1966}
\bibliography{refs}
\end{document}

相关内容