是否有用于检查 PDF/A 合规性的免费或开源软件?

软件推荐 pdf
2021-10-20 23:01:10

PDF/A 是便携式文档格式 (PDF) 的 ISO 标准化版本,专门用于电子文档的数字保存。

https://en.wikipedia.org/wiki/PDF/A

这很好,但是是否有任何免费工具可以检查单个 PDF 文件是否符合任何 PDF/A 子标准(PDF/A-1、PDF/A-2、PDF/A-3)?

这个(旧)网站上,我找到了商用工具列表:

  • Acrobat 8​​ Preflight(由 callas 软件开发)
  • PDF Tools AG:3-Heights PDF Validator
  • LuraTech:LuraDocument PDF 验证器
  • 密封系统:PDF 检查器
  • Intarsys:PDF/A Live!
  • 卡拉斯:pdfaPilot
  • Apago:PDF 评估器(由 Actino 出售)

然而,鉴于这个主题的重要性,我希望有某种免费可用的工具。作为一个愿景,如果一个成熟的开源 PDF 工具包(例如poppler )支持这样的分析,那就太好了。

3个回答

有JHove。JHove 是一个在一定程度上“验证”PDF/A 合规性的开源工具。许多图书馆/机构都在使用它,所以从这个角度来看,这是对我的问题的一个很好的回答。

最近,在现代文档存储系统的背景下发表了一篇关于 JHove 的文章:http ://www.pdfa.org/wp-content/uploads/2014/12/PDF_A_JHOVE_Friese_28112014_en1.pdf

引用它:

JHOVE 是一个开源工具,用于识别、表征和验证常见格式,例如 pdf、tiff、jpeg、aiff 和 wave。JHOVE 包括用于 12 种不同文件格式(包括 PDF)的验证模块。

许多存储机构主要使用 PDF 格式,并且文件的质量并不总是足以将它们转换为 PDF/A 的论据,我相信标准的 PDF 验证器仍然像往常一样必要。一般来说,尽管 JHOVE 存在局限性,但仍将继续使用,关于给定文件的可归档性的决定将取决于 JHOVE 给出的结果。

如果用户了解它的错误报告并知道解决它们的方法,JHOVE 仍然很有用。到目前为止,关于这个问题的文档并不多。Nestor(AG 格式识别)和 Open Preservation Foundation 都致力于尽快改善这种情况。

以下是 JHove 错误消息的列表: http ://wiki.opf-labs.org/display/KB/JHOVE+Error+Messages

您可以使用veraPDF

  • 开源(veraPDF 在 GNU 通用公共许可证 v3 或更高版本 (GPLv3+) 和 Mozilla 公共许可证 v2 或更高版本 (MPLv2+) 下获得双重许可。)
  • Linux、Mac OS X、微软视窗
  • 用Java编写
  • CLI 或图形用户界面

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述在此处输入图像描述

Usage: veraPDF [options] FILES
  Options:
    -x, --extract
       Extracts and reports PDF features.
       Default: false
    --fixmetadata
       Performs metadata fixes.
       Default: false
    -f, --flavour
       Chooses built-in Validation Profile flavour, e.g. '1b'. Alternatively,
       supply '0' or no argument for automatic flavour detection based on a file
's
       metadata.
       Default: 0
       Possible Values: [0, 1a, 1b, 2a, 2b, 2u, 3a, 3b, 3u]
    --format
       Chooses output format.
       Default: mrr
       Possible Values: [xml, mrr, text]
    -h, --help
       Shows this message and exits.
       Default: false
    -l, --list
       Lists built-in Validation Profiles.
       Default: false
    --maxfailures
       Sets maximum amount of failed checks.
       Default: -1
    --maxfailuresdisplayed
       Sets maximum amount of failed checks displayed for each rule.
       Default: 100
    -o, --off
       Turns off PDF/A validation
       Default: false
    --policyfile
       Select a policy schematron or XSL file.
    --prefix
       Sets file name prefix for any fixed files.
       Default: veraFixMd_
    -p, --profile
       Loads a Validation Profile from given path and exits if loading fails.
       This overrides any choice or default implied by the -f / --flavour option
.
    -r, --recurse
       Recurses through directories. Only files with .pdf extensions are
       processed.
       Default: false
    --savefolder
       Sets output directory for any fixed files.
       Default: <empty string>
    --success, --passed
       Logs successful validation checks.
       Default: false
    -v, --verbose
       Adds failed test information to text output.
       Default: false
    --version
       Displays veraPDF version information.
       Default: false

veraPDF is processing STDIN and is expecting an EOF marker.
If this isn't your intention you can terminate by typing an EOF equivalent:
 - Linux or Mac users should type CTRL-D
 - Windows users should type CTRL-Z

PDFBox

您可能想查看(开源)Apache PDFBox 库:

https://pdfbox.apache.org

这包括一个相当不错的 PDF/A 验证器(仅限 PDF/A-1b)。我建议查看 PDFBox 2.0.0(目前是候选版本);你可以在这里找到它:

https://pdfbox.apache.org/download.cgi#20x

然后下载预构建的 Preflight 独立二进制文件(当前为 preflight-app-2.0.0-RC1.jar)。

以下博客文章总结了我们在研究项目中使用 Apache Preflight 所做的一些工作(它包含指向您可能会发现有用的一些进一步资源的链接):

https://www.bitsgalore.org/2015/07/08/why-pdfa-validation-matters-part-2

维拉PDF

在旁注中,Bruno Lowagie 提到了一个新的欧盟资助的验证器。现在称为VeraPDF他们刚刚(2015 年 10 月)发布了一个早期版本,该版本完全涵盖了 PDF/a1b(以及对 PDF/A-1a、PDF/A-2 和 PDF/A-3 的部分支持)。更多信息在这里:

http://verapdf.org/2015/11/02/complete-pdfa-1b-coverage-now-available-in-0-6-release-of-verapdf/

这仍处于早期阶段,但他们似乎正在迅速取得进展,因此绝对值得关注。