2012-04-05 2 views
7

Я пишу небольшое приложение для преобразования нескольких многостраничных PDF-файлов в многостраничные файлы TIFF. По другим вопросам и ответам на этом сайте я пробовал как ghostscript, так и ImageMagick, однако обе части программного обеспечения скрывают только первую страницу, когда я их запускаю. Существуют ли какие-либо другие инструменты, которые я могу использовать для этого, предпочтительно с открытым исходным кодом?Инструменты для преобразования многостраничного PDF в многостраничный TIFF

+0

Язык? Коммерческая или бесплатная? –

ответ

18

На самом деле Ghostscript может преобразовывать многостраничный PDF-файл в многостраничный TIFF. Просто убедитесь, что установлена ​​довольно новая версия Ghostscript. Будьте внимательны при рассмотрении полученного TIFF, так как ваш зритель может не показывать все страницы TIFF, или может быть неясно, как продвигаться к последующим страницам в TIFF.

Рассмотрим следующие 3 команды:

gs      \ 
    -o multipage-tiffg4.tif \ 
    -sDEVICE=tiffg4   \ 
    multipage-input.pdf 

и

gs       \ 
    -o multipage-tiff24nc.tif \ 
    -sDEVICE=tiff24nc   \ 
    multipage-input.pdf 

и

gs       \ 
    -o multipage-tiff32nc.tif \ 
    -sDEVICE=tiff32nc   \ 
    multipage-input.pdf 

Каждая из этих команд генерирует многостраничный TIFF с, но с разными output devices:

  1. tiffg4 один оттенок серого и использует разрешение 204dpi на 196dpi (как требует стандарт факсимильной связи TIFF G4).
  2. tiff24nc один цвет RGB (с 8 бит на компонент цвета) и использует разрешение 72dpi на 72dpi.
  3. tiff32nc один в цвете CMYK (с 8 бит на цвет), также с разрешением 72dpi.

Существует множество дополнительных устройств вывода для TIFF по вышеуказанной ссылке.

Все значения разрешения для файлов TIFF являются результатом настроек Ghostscript по умолчанию. Если вы хотите переопределить это, например, потому, что вам требуется 600dpi на 600dpi, просто добавьте

-r600x600 

любому из вышеуказанных commandlines.

Чтобы доказать, что у вас есть многостраничные размолвки, используйте следующую команду:

identify multipage-tiff*.tif 

(. identify является командой из пакета ImageMagick, который вы, кажется, установили в любом случае) В результате вы должны увидеть несколько строк для каждого из файлов * .tif - каждая строка представляет 1 страницу соответствующего * .tif.

Я подозреваю, что это, возможно, все время работало для вас, - что вы просто не смогли распознать несколько страниц в полученных TIFF. Не все зрители TIFF могут их отображать - они отображают первую страницу только в том случае, если они не могут иначе, что могло вас обмануть.

+2

Благодарим вас за подробный ответ.Я обнаружил, что средство просмотра изображений по умолчанию в Ubuntu не отображало правильно преобразованные tif. Я открыл их в другом телезрителе и подтвердил, что они были правильно преобразованы с использованием ImageMagick и Ghostscript. –

+0

@ Kurt_Pfeifle Знаете ли вы, как открывать многостраничный PDF-файл для одностраничных TIFF? http://stackoverflow.com/questions/28569946/ghostscript-how-to-covert-a-multi-page-pdf-to-single-page-tiffs –

+0

Я поставил это в комментарии к исходному вопросу (IMO It не должны были быть закрыты). Вам нужно указать выходной файл, используя '% d', так что, когда у Kurt есть -o multipage-tiff32nc.tif, вы бы поставили -o multipage-tiff32nc-% d.tif – KenS

0

Вы также можете использовать Imagick php extension, если вам интересно сделать это в php вместо скрипта bash.

 Смежные вопросы

  • Нет связанных вопросов^_^