嵌入文件的 PDF/A-3u 缺少 /AF 条目和 /AFRelationship 条目

嵌入文件的 PDF/A-3u 缺少 /AF 条目和 /AFRelationship 条目

我有以下数据文件data.txt

Testdata

以及以下 LaTeX 代码test2.tex

\documentclass{article}

\usepackage[a-3u]{pdfx}
\usepackage{embedfile}
\newcommand{\datafile}[2]{\embedfile[filespec={#2},ucfilespec={#2},filesystem=URL,mimetype=application/octet-stream,desc={#2},stringmethod=escape]{#1#2}}

\datafile{}{data.txt}

\begin{document}
Bla bla ...
\end{document}

使用pdfLaTeX我可以生成一个声称是 PDF/A-3u 的 PDF。

如果我使用 Adob​​e Preflight 验证此 PDF,我收到以下错误:

  • 嵌入文件没有 /AF 条目
  • 嵌入文件没有 /AFRelationship 条目

在此处输入图片描述

如果我使用 veraPDF V1.10.6 来验证 PDF,我会收到以下错误:

在此处输入图片描述

我怎样才能解决这些问题?

我看到其他人也有类似的问题,请参见带有附件的 PDF/A-3b:如何在 pdf 目录中创建 /AF 条目?

更新

我发现以下来源描述了 /AF 条目和 /AFRelationship 条目,请参阅https://arxiv.org/pdf/1406.6126.pdf。我不太明白。

如果我看一下未压缩的 pdf 文件,其中描述了嵌入文件,它看起来像这样:

5 0 obj
<</Type/Filespec/FS/URL/F(data.txt)/UF(data.txt)/Desc(data.txt)/EF<</F 4 0 R>>>>
endobj

如果将其改为

5 0 obj
<</Type/Filespec/FS/URL/F(data.txt)/UF(data.txt)/Desc(data.txt)/AFRelationship/Unspecified/EF<</F 4 0 R>>>>
endobj

那么就不再会缺少 /AFRelationship 条目。

并且应该有某个地方可以/AF[5 0 R 5 0 R]解决缺失的 /AF 条目。

答案1

自 2019/12/03 起,和/AF/AFrelationship已添加到embedfile2.9 版软件包中。

https://ctan.org/pkg/embedfile

必须/AFrelationship使用以下命令进行设置:

\newcommand{\datafile}[2]{
  \embedfile[
    filespec={#2},
    ucfilespec={#2},
    filesystem=URL,
    mimetype=application/octet-stream,
    afrelationship={/Data},
    desc={#2},stringmethod=escape
  ]{#1#2}}

然后,生成的 PDF 将使用 veraPDF V1.14.8 通过 PDF/A-3U 验证。

相关内容