74 votes

ImageMagick pas de délégué de décodage

J'essaie de convertir une image avec imagemagick, mais j'obtiens cette erreur :

convert : no decode delegate for this image format `//i.imgur.com/nTheJ.jpg' @ error/constitute.c/ReadImage/532.

C'est ce que je fais :

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

J'ai les délégués suivants :

DÉLÉGUÉS freetype jpeg jng mpeg png x11 xml zlib

Quelqu'un sait-il quel est le problème ?

0 votes

Eh bien, vous avez le délégué JPEG et il dit qu'il y a un problème. Ce qui pose la question : quel est le problème avec le fichier source ? Ou, l'installation JPEG.

0 votes

Pourriez-vous préciser quel système d'exploitation vous utilisez, et quelle version d'ImageMagick ?

80voto

Jonathon Horsman Points 1503

J'ai eu cette erreur lors du rendu d'une image en utilisant DragonFly dans Rails. Cela s'est produit après la mise à niveau vers Lion (ImageMagick a été installé en utilisant Brew).

J'ai réinstallé ImageMagick, jpeg, libtiff et jasper (la réinstallation d'ImageMagick n'était pas suffisante en soi).

brew uninstall imagemagick jpeg libtiff jasper
brew install imagemagick

Avant cela, l'exécution

identify -list format

et jpeg n'était pas dans la liste. Après avoir réinstallé les paquets ci-dessus, jpeg est apparu dans la liste.

2 votes

Dans mon cas, il manquait libpng - je l'ai installé avec MacPorts, ce qui a déclenché une reconstruction d'ImageMagick .

0 votes

Je n'ai jamais pu faire en sorte qu'Imagemagick trouve les fichiers TIF, alors j'ai utilisé GraphicsMagick à la place. Ça a marché.

1 votes

Même situation. Réinstaller imagemagick n'a pas suffi - il fallait spécifier jpeg.

26voto

deepwinter Points 1280

Pour moi :

 brew reinstall imagemagick --with-libtiff

a sauvé la mise en traitant un problème similaire, mais pour les fichiers tiff.

MISE À JOUR : un an plus tard, cette méthode reste le seul moyen d'obtenir un fonctionnement correct de tiff dans convert sous MacOS X.

0 votes

L'installation de cette manière était essentielle pour que les fichiers TIFF fonctionnent correctement. Une installation normale d'imagemagick ne fonctionnait pas.

0 votes

Vous pouvez utiliser brew info imagemagick pour voir quelles autres options vous pouvez réinstaller imagemagick en utilisant brew. Très utile.

2 votes

Warning: imagemagick: this formula has no --with-libtiff option so it will be ignored!

17voto

tgfuellner Points 106

Substitude le × en -resize 600×600 avec une majuscule X et cela devrait fonctionner.

-resize 600X600

1 votes

Ça n'a pas marché pour moi : ERROR ArgumentError : N'a pas reconnu la chaîne géométrique 100X100

0 votes

C'est vraiment bizarre. Ça marchait bien avec le "x" minuscule jusqu'à ce que je commence à convertir des fichiers de type blob. J'ai fait ce que vous avez dit et tout a refonctionné.

6voto

mathieuc Points 31

Sur Ubuntu 16, j'ai dû d'abord installer les éléments suivants (ce n'était pas une machine de développement mais un serveur) :

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

puis d'activer les délégués PNG et JPG :

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

suivi par

./configure

(Ce qui devrait maintenant montrer que les délégués sont activés)

et ensuite reconstruire ( make clean && make puis sudo make install )

3voto

wawa Points 371

Redhat4.8, Si vous installez à partir de la source, vous pouvez peut-être essayer :

yum remove 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

faire

sudo make install

que d'utiliser ImageMagick

cd ImageMagick-6.9.6-4

./configure

sudo make install

sudo ldconfig /usr/local/lib

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X