PDF/A 与 TikZ 的兼容性

PDF/A 与 TikZ 的兼容性

当 LaTeX 文档包含具有颜色渐变的 TikZ 图形时,Acrobat Pro 的预检功能似乎无法再将 PDF 转换为符合 PDF/A-1b 标准。

例如,代码

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
  \tikz  \draw [left color=green, right color=blue] (0, 0) rectangle (1, 1);
\end{document}

生成一个具有绿色到蓝色渐变颜色的矩形,

TikZ 中的颜色渐变

这会导致两个 PDF/A 合规性错误(“语法问题:实际值超出范围”),即“使用的最大正实数:32768.0”和“使用的最大负实数:-32768.0”。下面的屏幕截图表明这可能与边界框问题有关。

http://www.callassoftware.com/callas/doku.php/en:products:pdftoolbox:all_features:properties关于“使用的最大正实数”的说法是 “在许多环境中,有效范围仅限于 IEEE 为单精度浮点数定义的值。这将范围限制为:+/- 32,767。”

有没有办法解决这个问题并获取 PDF/A 文件?

编辑:当我向 TikZ \draw 选项添加非统一不透明度值(例如“opacity=0.9999”)时,其中一个错误(“使用的最大正实数:32768.0”)消失。

飞行前“验证是否符合 PDF/A”

答案1

使用 TeX Live 2014、pdfTeX 3.14159265-2.6-1.40.15,我似乎没有遇到这些问题。也许更新 TeX 系统可以解决这些问题。

这是您的 MWE 的修改,它嵌入了颜色配置文件和元数据(我无法访问 Adob​​e 的 Preflight 工具或其他可以在后处理步骤中执行此操作的软件)。有关如何嵌入此额外数据的信息可在https://tex.stackexchange.com/a/99666https://tex.stackexchange.com/a/136653。颜色配置文件可从http://www.color.org/srgbprofiles.xalter

\documentclass{standalone}
\pdfminorversion 4
\immediate\pdfobj stream attr{/N 3} file{sRGB_IEC61966-2-1_black_scaled.icc}
\pdfcatalog{%
/OutputIntents [ <<
/Type /OutputIntent
/S/GTS_PDFA1
/DestOutputProfile \the\pdflastobj\space 0 R
/OutputConditionIdentifier (sRGB IEC61966-2-1 black scaled)
/Info(sRGB IEC61966-2-1 black scaled)
>> ]
}
\usepackage{hyperxmp}
\usepackage[pdftex, pdfa]{hyperref}
\hypersetup{%
    pdfauthor          = {a},
    pdfkeywords        = {a, b, c},
    pdflang            = {en},
    pdftitle           = {a},
    pdfsubject         = {a},
  pdfcaptionwriter   = {a},
  pdfcontactaddress  = {a},
  pdfcontactcity     = {a},
  pdfcontactcountry  = {a},
  pdfcontactemail    = {a},
  pdfcopyright       = {a},
  pdfmetalang        = {en}
}
\usepackage{tikz}
\begin{document}
  \tikz  \draw [left color=green, right color=blue] (0, 0) rectangle (1, 1);
\end{document}

PDFBox 预检(http://en.wikipedia.org/wiki/Apache_PDFBox) 和 3-Heights PDF Validator 在线工具 (http://www.pdf-tools.com/pdf/validate-pdfa-online.aspx) 表示我从中得到的是一个有效的 PDF/A-1b 文件。

相关内容