上传
arXiv 支持所有东西一整个 zip 压缩包上传,上传后会自动解压,所以只需要把图片、bbl、tex 文件按如下方式组织即可
. ├── manuscript.tex ├── ref.bbl ├── figure | └── subfold1 | └── subfold2
注意,是 bbl 文件,不是 bib 文件,arXiv 不支持编译 bib,所以要上传本地编译好的 bbl 文件。
编译
上传完 tex 和相关文件后,下一步便是编译,可以下载编译完成的 PDF。需要仔细核对下生成的 PDF,如果你跟我一样是马大哈,可能会发现所有的参考文献都是 ??。仔细看下面的编译信息,给出的是 latex ‘manuscript.tex’ failed.
慢着,说好的不应该是 pdflatex 么,怎么变成 latex 编译了。原来 arXiv 默认的是采用 latex,根据 https://arxiv.org/help/submit_tex 里面提到的,如果想要采用 pdflatex,需要在 tex 文件的前五行加入 \pdfoutput=1。 重新上传编译后就会发现参考文献的引用都对了。
还有需要提到的一点是,arXiv 目前是采用 TeX Live 2016 来编译。考虑到论文经常会遇到同样的 tex 代码在 MiKTeX 和 TeX Live 编译出来效果不一样的现象,所以这又是一个为什么要用 TeX Live 2016 的原因了。
cleveref
虽然把参考文献的引用搞定了,但我还是遇到了所有用 cleveref 宏包 \cref 命令的引用(公式、图表)全部都还是??。根据http://tex.stackexchange.com/questions/276801/how-does-one-use-cleveref-in-an-arxiv-submission,原来问题出在 cleveref 必须在 hyperref之后 load。为了贴近发表后的效果,我是没有用 hyperref宏包,但 arXiv 的编译系统会自动添加 hyperref 宏包,这也就是为什么每篇 arXiv 论文都用红色和绿色引用方框的原因了。
避免出现 \cref 引用 ?? 的解决办法是自己在 cleveref 之前 load hyperref,也就是
\usepackage{hyperref} \usepackage{cleveref}
Check List
综上所述,把论文从期刊投稿版本变成 arXiv 版本只需要在上传 check 一下下面三件事:
在前 5 行 添加
\pdfoutput=1
显式在
cleveref
之前调用hyperref
参考文献 bib 文件的路径正确
发表评论 取消回复