网络上有很多关于如何生成符合 PDF/A-1b 标准的文档的讨论。
一种方法可以在http://support.river-valley.com/wiki/index.php?title=Generating_PDF/A_compatible_PDFs_from_pdftex据我所知,它已在pdfx
包中实现。
我创建了一个最小test.tex
文件:
\documentclass{文章} \usepackage[a-1b]{pdfx} \开始{文档} 你好世界! \结束{文档}
据我了解,我需要将元数据放在一个名为 test.xmpdata 的单独文件中:
\Title{PDF/A-合规性} \作者{艾达·洛夫莱斯} \Org{TeX 大学} \关键词{PDF/A}
我test.tex
使用 pdfTeX 3.1415926-1.40.10-2.2(TeX Live 2009/Debian)进行编译。
为了验证 PDF/A-1b 兼容性,我使用jhove
LibreOffice 导出的 PDF 作为积极控制。
jhove -m pdf-hul 测试.pdf
然而,jhove 哀叹
错误消息:词汇错误 偏移:16530
所以我的test.pdf
文件似乎不符合 PDF/A 标准。您能否给我一些提示,告诉我需要运行哪些额外的诊断程序才能查明问题所在?
答案1
查看更新的解决方案
https://tex.stackexchange.com/a/535849/50129
过时
使用默认的 pdftex 无法生成符合 PDFA-1b 标准的文档。pdftex 中有一个小错误,导致 EOL 标记不合规。2011 年有一个关于此问题的错误报告,成功解决了该问题。您可以在此处找到它:
http://sarovar.org/tracker/index.php?func=detail&aid=4341&group_id=106&atid=493
本报告还附有一份文件: http://sarovar.org/tracker/download.php/106/493/4341/10821/verify_this_sample.zip
它包含有关如何修补 pdftex 以生成 PDFA-1b 兼容文件的说明。该软件包还包含 pdfx 的修补版本。不幸的是,这些更改尚未进入代码库。
答案2
我必须通过验证文档jhove
,并且我设法使用pdftk
在生成的 PDF 上pdflatex
。我只是使用了命令
pdftk MyDocument.pdf output ValidatedDocument.pdf
希望可以帮到你!
答案3
我不知道这是否是问题的正确答案,但它可能会帮助那些想要生成 PDF/A 的人(尤其是1b来自 LaTeX 项目的档案版本。
我尝试了这个pdfx
软件包,尽管它有助于减少验证错误的数量,但 veraPDF 仍然抱怨太多其他问题。问题是 LaTeX 本身无法检查所有要求(例如图形的透明度)。
经过一番研究我发现Ghostscript可用于将 PDF 转换为 PDF/A(请参阅线),但验证也并不总是成功。有些版本甚至不起作用。有时它可以工作,但生成的 PDF 会出现一些问题(例如链接不起作用、元数据被删除等)。
然后我们的想法是使用该pdfx
包,使用 pdfLaTeX 编译项目,然后在生成的 PDF 上运行 Ghostscript,并使用类似的程序Exif工具修复元数据问题。这给了我很好的结果(至少在我的 LaTeX 论文上)。
我写了一个简单的脚本来自动化上述过程。虽然我不确定它是否适用于每个 LaTeX 项目,但我希望它能帮助处于同样情况的人。安装过程以及源代码托管在 github 上:latex2pdfa