Я разрабатываю "безбумажный" рабочий процесс и планирую сохранить все файлы в формате PDF/A-1b.
Я пытаюсь разработать простой пакетный файл для преобразования PDF-файлов, которые я создаю или получаю в PDF/A-1b. Исходя из этого ответа, у меня есть следующий пакетный файл:
gswin32c ^
-dPDFA ^
-dNOOUTERSAVE ^
-sProcessColorModel=DeviceCMYK ^
-dUseCIEColor ^
-sDEVICE=pdfwrite ^
-o %2 ^
-dPDFACompatibilityPolicy=1 ^
"C:\Program Files (x86)\gs\gs9.07\mylib\PDFA_def.ps" ^
%1
В PDFA_def.ps я пробовал несколько разных профилей ICC, в том числе один в своей системе
C:/Windows/System32/spool/drivers/color/CalibratedDisplayProfile-5.icc
и sRGB_IEC61966-2-1_no_black_scaling.icc
от color.org.
Мой тестовый входной файл представляет собой одностраничное электронное письмо, напечатанное из Microsoft Outlook 2010 с использованием CutePDF 2.8 (в котором используется Ghostscript 8.15).
После конвертации с моим пакетным файлом и Ghostscript 9.07 Adobe Reader считает, что вывод PDF/A, но проверка PDF/A-1b на pdf-tools.com завершается неудачно с сообщением «Значение ключа N равно 4, но должно быть 3 «.
Я проследил это до следующей конструкции в выходном файле PDF:
<</Filter/FlateDecode
/N 4/Length 2595>>stream
Если я изменю /N 4
на /N 3
, сообщение "значение ключа N" исчезнет. /N
видимому, представляет количество объектов в потоке, который следует за этим заголовком. Я не знаю, как читать закодированный поток, поэтому я не понимаю, что он содержит, и почему pdf-tools считает, что он должен содержать только 3 объекта.
PDF/A, напечатанный с использованием Bullzip, который также использует Ghostscript, также не проходит проверку с сообщением «ключ N равен 4, но должен быть 3».
Это как-то связано с цветовым пространством? Я вне моей глубины там. Я думаю, что я был бы счастлив с "простым" пространством sRGB. Документы Ghostscipt говорят, что кодировка PDF/A должна быть CMYK. Adobe подразумевает, что RGB или CMYK работают для PDF/A. Так что мне неясно, как найти подходящий профиль .icc.
А может, валидатор не прав и все нормально?