ImageMagick делегат без декодирования - PullRequest
56 голосов
/ 06 марта 2012

Я пытаюсь преобразовать изображение с помощью imagemagick, но я получаю эту ошибку:

convert: нет делегата декодирования для этого формата изображения `//i.imgur.com/nTheJ.jpg '@ error / constitute.c / ReadImage / 532.

Я делаю это:

convert http://i.imgur.com/nTheJ.jpg -resize 600×600 filarkiv/billeder/produkter/s236-085145.jpg

У меня есть следующие делегаты:

ДЕЛЕГАТЫ freetype jpeg jng mpeg png x11 xml zlib

Кто-нибудь знает, в чем проблема?

Ответы [ 9 ]

73 голосов
/ 25 апреля 2012

У меня была эта ошибка при рендеринге изображения с использованием DragonFly в Rails. Это произошло после того, как я обновился до Lion (ImageMagick был установлен с помощью Brew).

Я переустановил ImageMagick, jpeg, libtiff и jasper (переустановка ImageMagick сама по себе была недостаточной).

brew uninstall imagemagick jpeg libtiff jasper
brew install imagemagick

До этого работает

identify -list format

и JPEG не было в списке. После переустановки вышеуказанных пакетов в списке появился jpeg.

25 голосов
/ 06 мая 2014

для меня:

 brew reinstall imagemagick --with-libtiff

спас день, когда столкнулся с подобной проблемой, но для файлов tiff.

ОБНОВЛЕНИЕ: год спустя, и это остается единственным способом, которым я могу получитьTIFF работает нормально при конвертации в MacOS X.

13 голосов
/ 06 марта 2012

замените × в -resize 600×600 на заглавную X, и оно должно работать.

-resize 600X600
3 голосов
/ 09 января 2015

Я недавно столкнулся с той же проблемой.После нескольких часов поиска в Google, я обнаружил, что причиной является КОНФЛИКТ между расширениями php Gmagick & Imagick.Комментирование gmagick.so в php.ini устранило проблему.Надеюсь, это сэкономит кому-то время :) 1001 *

1 голос
/ 17 ноября 2016

redhat4.8, если установить из источника, может быть можно попробовать:

yum удалить libjpeg

wget http://www.imagemagick.org/download/delegates/jpegsrc.v9a.tar.gz

sudo tar xvf jpegsrc.v9a.tar.gz -C / usr / local / src /

cd / usr / local / src / jpeg-9a

. / Configure --enable-shared

сделать

sudo make install

чем превратить в ImageMagick

cd ImageMagick-6.9.6-4

. / * Настройка * 1025

sudo make install

sudo ldconfig / usr / local / lib

1 голос
/ 07 ноября 2016

В моем случае решение заключалось в том, чтобы завершить команду *.{jpg,png} вместо *.

Я считаю, что * собирал / пытался конвертировать скрытые файлы.

1 голос
/ 21 октября 2015

от Филиппа Ингрэма где-то на межсетях:

при использовании gentoo

sudo EXTRA_ECONF="--with-png --with-jpeg" emerge imagemagick"

Это немного отличается от ответа Джонатана Хорсмена, поскольку это не ошибка, а необходимость указатьбольше во время установки.

Но команда идентификации была очень полезна.

Надеюсь, это кому-нибудь поможет (и, возможно, мне в будущем;).

0 голосов
/ 23 апреля 2019

на Ubuntu 16, мне сначала нужно было установить следующее (это была не машина разработчика, а сервер):

sudo apt-get install autoconf automake autotools-dev libtool pkg-config 

, чтобы включить делегатов PNG и JPG:

sudo apt-get install libpng12 libpng12-dev libjpeg libjpeg-dev

с последующим

./configure

(который теперь должен показывать, что делегаты включены)

, а затем восстановить (make clean && make, затем sudo make install)

0 голосов
/ 26 января 2017

Я столкнулся с похожей проблемой с файлами TIFF в ImageMagick v7.0.4-5 в Windows 7.

Если этот вопрос касается ОС Windows, то причина в том, что Windows не может найти Jpeg (в моем случае TIFF) файловая библиотека (DLL).

Причина

Я установил ImageMagick, не добавляя его в Windows $PATH.

Сообщение об ошибке

Это привело к ошибке

identify: unable to load module 'C:\Program Files\ImageMagick-7.0.4-Q16\modules\coders\IM_MOD_RL_TIFF_.dll':
The specified module could not be found.
 @ error/module.c/OpenModule/1279.
identify: no decode delegate for this image format `TIFF'
 @ error/constitute.c/ReadImage/509.

Решение

  • Переустановите ImageMagick и добавьте его в $PATH, чтобы он мог найти libtiff.Перезапустите командную оболочку.
  • Сначала cd в папку установки ImageMagick перед ее выполнением.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...