Пакетное преобразование искаженных PDF-файлов в TIF в Linux

Мне нужно преобразовать многостраничный PDF-файл в TIF, но он оказался искаженным PDF-файлом, предоставленным нашим клиентом. Я пытался использовать ImageMagick и GhostScript, но они неправильно конвертируют файл. Результат правильный только на 85-90%. Единственное, что я нашел, что делает работу, это GIMP, но я не могу найти пример его использования с помощью методов пакетной обработки для PDF-файлов.

Вот предупреждения, которые я получаю от ImageMagick и GhostScript:

 **** Warning: Tf refers to an unknown resource name: FORMS$.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: P06BOB.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN308E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: P06BOB.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN308E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: P06BOB.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN308E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN307A.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN104A.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN308E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN208E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN308E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN208E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: HE14BP.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN208E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN106E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN208E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN106E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN208E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: HE08BP.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: HE11BP.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: AR10NP.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN308E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: JIMP2.l Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: HS11C.l Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: FORMS$.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN104A.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN208E.f Assuming it's a font name.
 **** Warning: Tf refers to an unknown resource name: UN307E.f Assuming it's a font name.

 **** This file had errors that were repaired or ignored.
 **** Please notify the author of the software that produced this
 **** file that it does not conform to Adobe's published PDF
 **** specification.

Я открыт и для других предложений. Спасибо!

РЕДАКТИРОВАТЬ: я тестирую GhostScript 8.7 и ImageMagick 6.5.4.7-6.


person Mike Driscoll    schedule 14.12.2012    source источник
comment
Пример файла был бы очень полезен :)   -  person David van Driessche    schedule 14.12.2012
comment
Я бы с удовольствием предоставил его, но так как это клиентский файл, я не могу   -  person Mike Driscoll    schedule 14.12.2012
comment
Вы пытались открыть его в Adobe Acrobat (или даже в Reader)? Это, пожалуй, самые щадящие программы для чтения PDF на рынке. Если это сработает, то есть реализация технологии, которая может быть пакетной. Сам Acrobat можно создавать сценарии и автоматизировать, а базовые технологии используются для создания других автоматизированных инструментов командной строки и горячих папок.   -  person David van Driessche    schedule 15.12.2012
comment
Да, Adobe прекрасно открывает файл, однако, когда мы пытаемся преобразовать файл в формат TIFF для отправки по факсу, преобразование завершается ошибкой из-за искаженного характера файла. Я не нашел способа сделать это с помощью Adobe, а поскольку у нас более 300 пакетов, я, конечно, не могу сделать это вручную.   -  person Mike Driscoll    schedule 15.12.2012
comment
Пробовали ли вы открыть его в Adobe Acrobat и выбрать Сохранить как изображение › TIFF? Если он открывается правильно, я ожидаю, что сохранение как изображение также будет работать ... В качестве альтернативы (осторожно, я связан с этой компанией) загрузите callas pdfToolbox Desktop - он может открывать, сохранять как TIFF и может пакетировать всю папку файлов, если вы обнаружите, что один файл работает правильно.   -  person David van Driessche    schedule 15.12.2012
comment
@MikeDriscoll: используйте Adobe Reader, чтобы преобразовать файл в PostScript (для этого есть опция командной строки) и преобразовать PostScript в TIFF с помощью ImageMagick.   -  person Martin Schröder    schedule 15.12.2012
comment
GS 8.7 устарел; попробуйте последнюю версию (9.06 или около того).   -  person Martin Schröder    schedule 15.12.2012
comment
Если вы не можете предоставить образец PDF, вам лучше проанализировать характер дефекта в PDF. Вывод выглядит так, как будто какой-то ресурс шрифта отсутствует или указан неправильно. Tf — это оператор настройки шрифта, который ожидает имя шрифта ресурса в качестве параметра. Довольно часто вы видите, как люди вместо этого указывают само название шрифта. Может быть, это тот случай здесь.   -  person mkl    schedule 16.12.2012


Ответы (2)


не могу делать никаких существенных комментариев, не видя файла. Думали ли вы просто отправить файл обратно и попросить их сделать правильный?

Также вы не говорите, какие версии GS и ImadeMagick вы используете.

person KenS    schedule 14.12.2012
comment
Я не могу предоставить один. Нам не разрешено публиковать данные клиентов на общедоступных форумах. Я использую GhostScript 8.7 и ImageMagick 6.5.4.7-6. - person Mike Driscoll; 14.12.2012
comment
Что ж, я бы предложил обновить ваш Ghostscript. Предполагая, что вы имеете в виду 8.70, тогда (я думаю) 3 с половиной года, текущая версия 9.06. Может ли ваш клиент создать для вас PDF-файл такого типа без раскрытия конфиденциальной информации? Я не могу сказать, действителен ли файл или работать над исправлением, не увидев пример проблемы. - person KenS; 15.12.2012

Сломанные PDF-файлы ... Я их «люблю». На самом деле, странная, но хорошая идея — «распечатать» pdf-файл в другой pdf- или ps-файл. Это может очень помочь.

person s-m-e    schedule 14.12.2012
comment
Мы пытались сделать что-то подобное, но не получилось. У нас есть дерьмовое решение, которое использует GIMP + 2 другие утилиты, которые работают, но разрешение на выходе намного ниже. - person Mike Driscoll; 15.12.2012
comment
Это странно. Вы искали альтернативные принтеры PDF, такие как en.wikipedia.org/wiki/PDFCreator? (Ну, я думаю, вы спрашиваете о Linux - это будет вещь для Windows ...) - person s-m-e; 15.12.2012