Преобразование PDF в JPEG без их теней / скоса - PullRequest
0 голосов
/ 30 июля 2009

Я работаю над модулем CMS для сайта газеты. Я даю редакторам возможность загружать .pdf всей газеты, которая затем преобразуется в перелистывающуюся цифровую онлайн-газету.

Трюк с перелистыванием страниц выполняется с помощью flash и является просто .swf, который я использую для всех изданий. Моя проблема с преобразованием .pdf в .jpg.

Эти .pdf сделаны в Adobe InDesign CS4, и в большинстве случаев содержат изображения с такими эффектами, как капли или скосы.

Сначала я попробовал свой код с .pdf s, в котором были только текст или простые изображения, и он работал нормально. Когда я попробовал это с более сложными .pdf с, которые включали повернутые изображения с эффектами теней, все стало сложно.

Вот мой код ghostscript:

$result=exec("gs -sDEVICE=jpeg -sOutputFile=../ediciones/20090717/pages/page-%d.jpeg ../ediciones/20090717/20090717.pdf");

Вот единственная ссылка, которая вам понадобится.

Ответы [ 2 ]

1 голос
/ 30 июля 2009

У меня есть подозрение, что gs конвертирует pdf в ту же модель данных, которая поддерживает postscript. Postscript не поддерживает прозрачность (альфа-канал), поэтому нет способа представить тени в этом промежуточном формате. Затем gs рендерит jpg, очевидно, без прозрачности.

Я думаю, вам придется использовать другую стратегию для преобразования ваших PDF в JPG.

0 голосов
/ 30 июля 2009

Проблема решена.

Это было связано с тем, как PDF-файлы экспортировались из Adobe InDesign CS4.

Правильный формат для этого экспорта:

  • Стандарт: PDF / X-3: 2003
  • Совместимость: Acrobat 4 (PDF 1.3)
  • Вывод - Цвет: без преобразования цвета
  • Вывод - PDF / X: Документ -> (в любом месте, где находится документ)
  • Дополнительно - средство выравнивания прозрачности: [Среднее разрешение]

Пару этих конфигураций, я понятия не имею, что это такое, но это конфигурация, которая работала для правильного экспорта PDF-файлов и преобразования в JPEG (включая drophadow).

Из того, что я понимаю, в этой конфигурации есть процесс выравнивания, который происходит до того, как генерируется PDF, поэтому Ghostscript избавляется от необходимости интерпретировать прозрачность.

Теперь вы можете проверить сгенерированный JPEG здесь: http://www.dengelz.com/clientes/norte/ediciones/20090717/pages/page-1.jpg

...