Imagemagick, Snow Leopard и PDF Conversion

1402
Peer Allan

Возникли проблемы с Imagemagick и Snow Leopard.

Imagemagick был установлен с помощью сценария установки отсюда здесь . Все строит и устанавливает правильно. Imagemagick ведет себя нормально для всех команд (которые я могу найти), кроме случаев, когда пытаюсь конвертировать PDF. Например,

$ convert my.pdf my.jpg Segmetation Fault 

Я подумал, что это может быть ghostscript, и попытался запустить команду, которую делегирует Imagegick (через опцию -verbose)

$ convert -verbose spec/fixtures/documents/upload_test_file.pdf test.jpg "gs" -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=0 "-sDEVICE=pnmraw" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" "-sOutputFile=/var/folders/Xz/Xz6TDr0DFQaV5J1F7Ndamk+++TM/-Tmp-/magick-4zvJXfSz" "-f/var/folders/Xz/Xz6TDr0DFQaV5J1F7Ndamk+++TM/-Tmp-/magick-O7a9fDyp" "-f/var/folders/Xz/Xz6TDr0DFQaV5J1F7Ndamk+++TM/-Tmp-/magick-rBEzLUsx" Segmentation fault $ "gs" -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=0 "-sDEVICE=pnmraw" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" "-sOutputFile=my.jpg" "-fmy.pdf" 

И это работает. Он создает файл pnmrow, как и положено.

Я не уверен, куда идти отсюда, кто-нибудь еще видел это или видел это и решил это?

РЕДАКТИРОВАТЬ:

Как ответил Каспер Сурен ниже, с тех пор я перешел на Homebrew для управления этими библиотеками.

2
попробуйте конвертировать в pdf из других форматов, например, tiff, png и т. д. это работает? caliban 14 лет назад 0

3 ответа на вопрос

0
Lara Dougan

Ошибка сегментации - это ошибка обработки памяти в программе, поэтому это может быть либо ошибкой в ​​процессах сборки, либо самой программой. Я установил ImageMagick, используя MacPorts, а не собирая их из исходного кода, и версия ImageMagick для MacPorts, похоже, также содержит ошибки из-за ghostscript. Если вы откроете файл в режиме предварительного просмотра, JPEG как ... будет работать нормально.

РЕДАКТИРОВАТЬ:

Я возился с этим еще немного и у меня есть кое-что, что работает с использованием ghostscript:

gs -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT \ -dMaxBitmap = 500000000 -dAlignToPixels = 0 -dGridFitTT = 0 \ "-sDEVICE = jpeg" -dTextAlphaBits = 4 -dGraphicsAlphaBits = 4 \ "-r72x72" "-sOutputFile = out.jpeg" in.pdf

Где out.jpeg - выходной файл, а in.pdf в конце - ваш входной файл.

Вы также можете изменить -r72x72 на другое разрешение, если хотите настроить выходное разрешение выше 72 dpi.

К сожалению, нам нужно сделать это программно. Мне интересно, если это не как-то связано с 64-битной. До обновления до Snow Leopard проблем не было вообще Peer Allan 14 лет назад 0
Похоже, что это не что-то с 64-разрядной, так как он не работает на моем 32-разрядном MacBook. Lara Dougan 14 лет назад 0
С уважением, Адам. Мы обнаружили, что примерно в то же время вы это сделали и добились успеха. Пока не повезло в поиске решения, так что оно будет работать так, как нам нужно программно, но это решит начальную проблему. Peer Allan 14 лет назад 0
Альтернативный источник для ImageMagick - macports. http://www.macports.org/ orj 14 лет назад 0
0
Devon

Похоже, что команда imagemagick знает о проблеме, и она была исправлена ​​в версии 6.5.5-8.

Пакет MacPorts использует более новую версию ImageMagick от 16.09.09. Попробуйте выполнить самообновление, а затем обновить php5-imagick.

sudo port selfupdate sudo port upgrade php5-imagick 

Это решило проблему для меня.

Я намеренно избегаю Макпорта. Загрузка и сборка из исходного кода ImageMagick-6.5.6-1 также решили проблему. Или вы можете использовать удобный скрипт установки здесь http://github.com/maddox/magick-installer Peer Allan 14 лет назад 0
0
guaka

I suggest moving to Homebrew, a more modern variant of macports and fink.

brew install imagemagick 
Согласен, вот как я его сейчас установил. Конечно, когда был задан этот вопрос, его еще не было. Peer Allan 10 лет назад 0