CreatePreflightReportEx

Соответствие стандартам, инспекция документов

Выбор профиля чтения PDF/UA

Проверки PDF/UA выбирают часть 2, когда XMP указывает pdfuaid:part=2, и в остальных случаях удерживают проверки части 1; описанные здесь устаревшие проверки PDF/UA-1 не следует считать применимыми к части 2

Профиль PDF/UA-2 реализует базовые проверки идентификации, пространств имён, ролей и структуры; структурированные отчёты используют PDF/UA-2 и ISO 14289-2 и раскрывают fullCertification=false и неподтверждённую область

Чтобы принудительно задать целевую часть, используйте CheckFilePDFUACompliance или RunPDFUAValidationPipelineTask, а для просмотра пределов возможностей — GetPDFUAReadValidationCoverageJSON

Описание

Создает preflight-отчет для внешнего PDF-файла и конвертирует отчет в запрошенный формат вывода. Это форматно-ориентированная пара к CreatePreflightReport, которая всегда возвращает текстовый отчет

Синтаксис

Delphi

Function TPDFlib.CreatePreflightReportEx(Const InputFileName, Password: WideString; ComplianceTests, Options, ReportFormat: Integer): WideString;

Параметры

InputFileNameПолный путь к проверяемому PDF-файлу. Файл открывается только для чтения и не изменяется
PasswordПароль для открытия файла; для незашифрованных документов передайте пустую строку
ComplianceTestsБитовая маска, выбирающая включаемые проверки: 1 — PDF/A, 2 — PDF/UA, 3 или 0 — обе
OptionsБитовые флаги передаются каждому выбранному критерию соответствия. Значение 1 останавливает каждую проверку после первой найденной проблемы
ReportFormatВыбор формата вывода.

0 — простой текст.
1 — JSON-объект с полями заголовка, секциями по проверкам, массивами проблем и полями сводки.
2 — автономный HTML-документ, содержащий экранированный текстовый отчет.
3 — строки CSV с метаданными, выбранными проверками, кодами и сообщениями проблем и финальными строками сводки

Возвращаемое значение

Возвращает сгенерированный отчет в выбранном формате. Неизвестные значения ReportFormat откатываются к текстовому формату

Примечания

Форматы JSON, HTML и CSV генерируются из того же текстового отчета, что использует CreatePreflightReport, поэтому статус прохождения и число проблем согласованы между всеми форматами отчетов

JSON-объект открывает поля заголовка, массив sections, массивы строк проблем и объект summary. HTML-форма — автономный документ, экранирующий текстовый отчет внутри блока с моноширинным форматированием. CSV-форма использует фиксированные столбцы kind,section,status,code,message и разделяет метаданные, статусы проверок, строки проблем и строки сводки для разбора в таблицах или CI

Полный контракт форматов отчета и примеры командной строки — в Preflight Reports

Пример

JsonReport := PDF.CreatePreflightReportEx('output.pdf', '', 1 or 2, 0, 1);
HtmlReport := PDF.CreatePreflightReportEx('output.pdf', '', 1 or 2, 0, 2);
CsvReport := PDF.CreatePreflightReportEx('output.pdf', '', 1 or 2, 0, 3);

См. также

Preflight Reports, CreatePreflightReport, SavePreflightReportEx, ComparePreflightReports, CheckFileCompliance