Comment puis-je corriger cette erreur avec ImageMagick?
Je suis en utilisant ImageMagick pour convertir un fichier RAW (*.nef de l'extension) dans une image JPEG. Je suis en train de faire cela à partir de PHP, mais de ne pas utiliser l'extension IMagick (j'ai passé trop de temps à se taper la tête contre un mur en essayant d'obtenir que le travail que finalement, j'ai simplement abandonné). Au lieu de cela, je suis en utilisant PHP exec()
la fonction à appeler ImageMagick de la ligne de commande et il suffit de faire les manipulations.
De toute façon, j'ai écrit un simple script PHP pour ce faire -- pour convertir le NEF de l'image en une image JPEG -- et cela a fonctionné! J'ai couru à travers un certain nombre de tests. Lorsque le JPEG n'existait pas, il l'a créé. Lorsque le JPEG déjà n'existe pas, il a remplacé. Parfait!
Jusqu'à aujourd'hui. J'ai fait ce script, vendredi dernier. Aujourd'hui (lundi), quand il a essayé de l'utiliser, il a cessé de travailler. J'ai littéralement changé rien à ce sujet, mais quelques jours plus tard, il ne fonctionne pas tous les mêmes tests que j'ai couru le vendredi. Je peux les récupérer à la sortie de la ligne de commande, et ce sont les erreurs c'est la rencontre avec cette fois:
Magick: `%s' (%d) dcraw.exe -4 -w -O "C:/Windows/TEMP/magick-iDvVnHw-.ppm" "C:/Windows/TEMP/magick-hYeYwWRd" @ error/utility.c/SystemCommand/2094.
Magick: delegate failed `dcraw.exe -4 -w -O "%u.ppm" "%i"' @ error/delegate.c/InvokeDelegate/1058.
Magick: unable to open image `C:/Windows/TEMP/magick-iDvVnHw-.ppm': No such file or directory @ error/blob.c/OpenBlob/2588.
Magick: missing an image filename `E:\test.jpg' @ error/convert.c/ConvertImageCommand/3015.
Ces erreurs n'apparaissent pas sur vendredi. Pourquoi sont-ils maintenant? Que signifient-ils? Et ce que je peux faire à ce sujet? Merci à l'avance.
OriginalL'auteur soapergem | 2011-09-13
Vous devez vous connecter pour publier un commentaire.
J'ai eu une erreur similaire sur linux:
Le problème était d'un caractère spécial dans mon allemand picturename:
Je suis allé dans le dossier et a créé un lien symbolique sans le personnage:
OriginalL'auteur rubo77
Bien, j'ai été en mesure de le résoudre. J'ai fait deux choses, et je ne suis pas entièrement sûr que la première chose a eu un impact ou pas, mais je vais le mentionner à la fois pour quelqu'un d'autre mal. Tout d'abord, étant donné qu'il semblait avoir des problèmes avec un fichier temp, j'ai changé la sécurité de Windows/les autorisations sur le
C:\Windows\TEMP
dossier d'autoriser explicitementIIS_USER
le plein contrôle, ainsi queEveryone
.Mais, deuxièmement, et plus important encore, j'ai changé la commande que j'étais de passage dans
exec()
. Auparavant ma commande cherché quelque chose comme ceci:Ainsi, au lieu, j'ai spécifié un nouveau répertoire "temp", et de définir le chemin d'accès actuel, comme suit:
Et qui a fait le tour! Le script fonctionne à nouveau.
OriginalL'auteur soapergem