使用 fontspec 时,NSF fastlane 会从 PDF 中删除超链接

使用 fontspec 时,NSF fastlane 会从 PDF 中删除超链接

我正在尝试向 NSF Fastlane 提交提案文件。我正在使用 生成 PDF 文档lualatex。我的文件包含hyperref内部和外部链接,但它们被 Fastlane 的上传 PDF 重提功能删除。文本仍然存在并且可见,但没有可点击的链接。

这是我最小的不工作示例。我使用lualatexWindows 上的 TeXLive 2016 发行版对其进行了编译。罪魁祸首似乎是fontspec。如果我删除该行,链接就可以正常工作,但我想使用,fontspec这样我就可以选择字体。

\documentclass[fontsize=10pt,paper=letter,twoside=false,onecolumn]{scrartcl} 
\usepackage{fontspec} % This seems to be the problem.
\usepackage{hyperref}
\setmainfont{Palatino Linotype}

\begin{document}
\section{Section}\label{sec}
This is an explicit external url: \url{http://tex.stackexchange.com}.

This is an external link: \href{http://tex.stackexchange.com}{Link}.

This is an internal link to Sec.~\ref{sec}.
\end{document}

我的问题是:

  • 什么原因fontspec导致我的链接被 Fastlane 吃掉?
  • 有解决方法吗?

编辑: 问题在于 Fastlane 在重新提取 PDF 时如何处理字体。
例如,在给出的示例中,如果我pdffonts在生成的文件上运行,lualatex我会得到以下输出:

name                                 type              emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
TYJNNQ+PalatinoLinotype-Roman        CID TrueType      yes yes yes     19  0

但在将文件上传到 Fastlane 并重新下载后,输出结果pdffonts

name                                 type              emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
EKFDNL+PalatinoLinotype-Roman        CID TrueType      yes yes no      31  0
EKFFKE+PalatinoLinotype-Roman        TrueType          yes yes no      36  0
EKFFNF+PalatinoLinotype-Roman        TrueType          yes yes no       2  0

字体以某种方式被分解并重新编码,从而破坏了超链接。

编辑2:我不确定字体是否真的是问题所在。更改字体后,\url{}链接可以正常工作,但\href{}{}链接仍然不起作用。

答案1

问题是 Fastlane 的 PDF 提取器无法处理所有字体。请参阅 Fastlane 文档第 1346 页:https://www.research.gov/common/attachment/Desktop/FastLane_Help.pdf(警告:该文件大小为 30MB。)

说明书明确指出使用仅限 Type 1 或 TrueType 字体。具体来说,hyperref使用 mono 字体系列来排版 URL,因此必须明确设置。

这是技术问题。但根据最新的 NSF 指南(https://www.nsf.gov/pubs/policydocs/pappg17_1/pappg_2.jsp#IIB2),唯一允许的字体是

Arial、Courier New 或 Palatino Linotype,字体大小为 10 点或更大;

Times New Roman 字体,字体大小为 11 号或更大;或

字体大小为 11 点或更大的计算机现代字体系列。

在这些选择中,我相信唯一的等宽字体是Courier NewComputer Modern Typewriter(如果你有.ttf版本),所以有必要使用类似

\setmonofont{Courier New}

覆盖默认字体(例如lm-mono)或以其他方式禁用文档中的所有等宽字体。

相关内容