Linux PDF imagemagick mydropbox graphicsmagick
Сегодня понадобилось перегнать кучу tiff'ов в pdf. Интернеты предлагают следующие варианты:
1) использовать tiff2pdf по одному файлу, потом при помощи gs собрать много страничный файл. Вот только tiff2pdf на выходе даёт не pdf, а мазню, причём большого размера.
linsovet.com
2) использовать convert из imagemagick для сборки многостраничного pdf:
convert *.tiff -adjoin -monitor my.pdf
linsovet.com
Отличный вариант. Сначала у него заканчивается вся память, потом своп (тут уже тормоза), а потом он может вывалиться с ошибкой, что у него закончилось место в /tmp.
Вообще, иногда imagemagick ведёт себя непредсказуемо, выдаёт странные сообщения (Ошибка шины --- что это?), поэтому был заменён на свой форк graphicsmagick, благо синтаксис команд тот же. В итоге я остановился на варианте --- конвертировать в кучу pdf-файлов (JPEG-компрессия, оптимизированный, прогрессивный) при помощи graphicsmagick, а потом gs'ом собрать воедино:
for i in *.tiff; do gm convert -verbose -monitor $i -rotate 90 -quality 50 -compress JPEG -interlace line -define jpeg:optimize-code=true ${i%tiff}pdf; done
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=out.pdf -dBATCH *.pdf