Существует ли бесплатное программное обеспечение или программное обеспечение с открытым исходным кодом для проверки соответствия PDF/A?

PDF/A — это стандартизированная по ISO версия Portable Document Format (PDF), предназначенная для цифрового сохранения электронных документов.

( 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-высотный PDF-валидатор
  • LuraTech: LuraDocument PDF Validator
  • Системы печати: PDF Checker
  • Интарсис: PDF/A Live!
  • Каллас : pdfaPilot
  • Apago: Оценщик PDF (продается Actino)

Однако, учитывая важность этой темы, я надеюсь, что есть какой-то бесплатный инструмент. В качестве видения было бы неплохо, если бы установленный набор инструментов PDF с открытым исходным кодом, такой как poppler , поддерживал такой анализ.

Вы хотите проверить, претендует ли документ на совместимость с PDF/A, или действительно хотите проверить, совместим ли он с PDF/A? В первом случае вам понадобится инструмент для отображения метаданных, например Adobe Reader. Во втором случае вы, скорее всего, не обойдетесь без коммерческого инструмента (потому что определение соответствия — задача нетривиальная).
Хочу проверить на соответствие. Я понимаю, что это не тривиальная задача. Тем не менее, существует много очень сложных и высококачественных PDF-кодов с открытым исходным кодом (призрачный скрипт и поплер, и это только два примера), поэтому я думаю, что было бы несправедливым делать вывод о доступности бесплатного программного обеспечения или программного обеспечения ОС на основании исходного кода. сложность задачи :-). Но я думаю, у вас также есть некоторый опыт в этой области, и вы искали в Интернете? :)
Не существует такой вещи, как бесплатный валидатор PDF/A. Европейская комиссия начала проект по созданию такого валидатора. Подробнее об этом можно прочитать здесь: pdfa.org/news/… Поскольку это нетривиальная задача, вы можете себе представить, что этот проект далек от завершения. Я не знаю о каких-либо результатах, которые уже доступны.

Ответы (3)

Есть Джей Хоув. 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 включает в себя модули проверки для двенадцати различных форматов файлов, включая PDF.

а также

Поскольку многие учреждения памяти в основном используют формат PDF, и качество их файлов не всегда является достаточным аргументом для преобразования их в формат PDF/A, я считаю, что стандартный валидатор PDF остается таким же необходимым, как и всегда. В целом, JHOVE будет продолжать использоваться, несмотря на его ограничения, и решения относительно возможности архивирования данного файла будут зависеть от результатов, которые дает JHOVE.

JHOVE все еще может быть полезен, если пользователи понимают его отчеты об ошибках и знают способы их устранения. До сих пор не так много документации по этому вопросу. Как Nestor (AG Format Recognition), так и Open Preservation Foundation стремятся внести свой вклад в скорейшее улучшение этой ситуации.

Вот список сообщений об ошибках JHove: http://wiki.opf-labs.org/display/KB/JHOVE+Error+Messages

Кто-то должен попробовать и посмотреть, насколько хорошо проходит проверка на основе iText: api.itextpdf.com/pdfa
Обратите внимание, что модуль JHOVE PDF активно не поддерживается и сейчас сильно устарел. Вместо этого я бы рекомендовал veraPDF.

Вы можете использовать veraPDF :

  • с открытым исходным кодом (veraPDF имеет двойную лицензию в соответствии с Стандартной общественной лицензией GNU v3 или более поздней версии (GPLv3+) и общественной лицензией Mozilla v2 или более поздней версии (MPLv2+).)
  • Linux, Mac OS X, Microsoft Windows
  • написан на 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

Кстати, Бруно Лоуаги упомянул новый валидатор, финансируемый ЕС. Теперь он известен как VeraPDF ; они только что (октябрь 2015 г.) опубликовали ранний выпуск, который полностью охватывает 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/

Это все еще находится на ранней стадии, но, похоже, они быстро продвигаются вперед, так что определенно есть за чем следить.