2012-07-28 17 views
6

Ich versuche, ein Bild mit Node-ImageMagick-Bibliothek zu skalieren, aber es funktioniert nicht.imagemagick mit nodejs funktioniert nicht

der Code i die Größe verwende, ist

im.resize({ 
     srcPath: __dirname+'originalimage.jpg', 
     dstPath: __dirname+'resized.jpg', 
     width: 50 
    }, function(err, stdout, stderr){ 
     if (err) throw err; 

    }); 

Es führt den Fehler

Error: Command failed: Invalid Parameter - -set 

    at ChildProcess.<anonymous> (E:\NodeJsDevelopment\node_modules\imagemagick\imagemagick.js:64:15) 
    at ChildProcess.EventEmitter.emit (events.js:91:17) 
    at Process._handle.onexit (child_process.js:674:10) 
+0

Haben Sie "imagemagick" installiert? nicht das npm-paket? '' 'sudo apt-get install imagemagick''' – InspiredJW

Antwort

13

auf Fenster, die Sie auch die imagemagick exe zu installieren. Die imagemagick-Bibliothek nodejs ist nur ein Wrapper für imagemagick exe. So wird es nicht funktionieren, bis die imagemagick exe installiert ist und konvertieren und identifizieren ausführbar sind im Pfad.

+2

Sie müssen imagemagick (die Anwendung) auf fast allen Plattformen installieren. Zum Beispiel, auf dem Mac, habe ich es installiert mit Brew - 'brew install imagemagick' – k00k

+6

Für jeden, der hierher kommt, weil Sie den oben genannten Fehler unter Windows bekommen ... setzen Sie Ihre identify.exe und convert.exe in das gleiche Verzeichnis wie Sie server.js (oder app.js). Die Registrierung von imagemagick global funktioniert für mich nicht. – enko

+1

@enko Vielen Dank! Das löste mein Problem – vivek

0

Es ist nur so, dass Sie ImageMagick nicht in Ihrem System installiert haben. Wenn Sie eine Linux-Distribution verwenden, können Sie Folgendes tun:

sudo apt-get install ImageMagick