![使用超链接发布到 Arxiv](https://linux22.com/image/291738/%E4%BD%BF%E7%94%A8%E8%B6%85%E9%93%BE%E6%8E%A5%E5%8F%91%E5%B8%83%E5%88%B0%20Arxiv.png)
在回答这个问题时,首先要注意的是,在我的计算机上一切都能正常工作、编译和显示。但是,当我将文档上传到 arXiv.org 时,有时情况会发生变化。特别是,将参考书目中的 URL 发布到 arXiv.org (显然)非常困难。
问题 1:参考书目根本没有显示。
问题 1 已解决:使用 Biblatex-Biber 发布到 Arxiv
问题 2:参考书目显示文档边框之外的 URL。它不会将 URL 文本包装在参考书目项目中。同样,它在我的计算机上运行良好,但在网站 arXiv.org 上却不行。
问题 2 已解决:biblatex 书目中的长 URL 的换行符?
问题 3:使用前两个问题中的设置,我现在遇到了一个新问题。如果 URL 换行,如下所示
[5] Author. Title. PhD thesis. Place, May 2011. url: http://aaaaaaaaaaa.a
aaaaaaa/aaaaaaa.aaaaaaaa/aaaaaaa.aaa.aaaaaa.
arXiv.org 禁用了超链接。同样,超链接没有被禁用,在我的系统上工作得很好。但 arXiv.org 上的包装网址不再有超链接。如果书目项目看起来像
[6] Author. Title. PhD thesis. Place, May 2011. DOI: aaaa.aaa/a.aaa.aa
这样它就不会中断,超链接保持完整。
我该如何解决问题 3?考虑到 arXiv 的广泛使用,我很惊讶这不是一个更常见的问题。
梅威瑟:
测试.TEX
%Document Type
\documentclass[reqno]{amsart}
%Bibliography Commands
\usepackage[english]{babel}
\usepackage{csquotes}
\usepackage[style=numeric-comp,firstinits=true,backend=bibtex,%backref=true,
]{biblatex}
\bibliography{test.bib}
\DeclareFieldFormat[article,book,incollection,phdthesis,misc]{volume}{\mkbibbold{#1}}
\DeclareFieldFormat[article]{publisher}{\textnormal{#1}}
\DeclareFieldFormat[article,book,phdthesis]{title}{\mkbibemph{#1}}
\setcounter{biburlnumpenalty}{7000}
\setcounter{biburllcpenalty}{7000}
\setcounter{biburlucpenalty}{8000}
%Packages
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{enumerate}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{graphicx}
\usepackage{tikz,caption}
\usetikzlibrary{arrows,shapes,trees}
\usepackage{verbatim}
\usepackage{url}
\usepackage[hyperindex,breaklinks]{hyperref}
\hypersetup{linkcolor=blue, citecolor=red, colorlinks=true}
\usepackage{array}
\begin{document}
Reference \cite{one} and \cite{two}.
\printbibliography
\end{document}
测试版
@ARTICLE{one,
url = {http://www.google.com}}
@Article{two,
url = {https://tex.stackexchange.com/questions/182523/publishing-to-arxiv-with-hyperlinks?noredirect=1#comment420451_182523}}
如果你在本地系统上编译它,它工作正常。但如果你尝试将其发布到 arXiv,它不再具有第二项的超链接。
答案1
通过 MWE,我可以看到 arXiv 正在使用latex
而不是 来处理您的提交pdflatex
。您可以pdflatex
通过添加一行来强制执行
\pdfoutput=1
在提交的前 5 行内,在这种情况下一切似乎都正常。参见关于这一点的 arXiv 帮助。
答案2
由于所有答案(包括链接问题)都不适用于我的情况,因此这里是最终对我有用的特定设置在 arxiv 上。该hyperref
包已经被 arxiv 预加载,因此再次加载会导致编译错误。
\usepackage{url}
\usepackage{breakurl}
%\usepackage[breaklinks]{hyperref}
\def\UrlBreaks{\do\/\do-}
答案3
arXiv 的默认行为是将 hyperref 值设置为breaklinks
。false
这可能会在将来发生变化,但您\hypersetup
只需设置此键值即可在您的数据库中考虑到这一点。