2012-06-05 50 views
0

我有一個節點應用程序,它接受已上傳的圖像(使用強大的圖像)並將其存儲到Amazon S3存儲桶中。在保存到S3之前,我想要獲取圖像的寬度,高度等,以備將來考慮。我發現這個問題,這幫助:Opening images on NodeJS and finding out width/heightNode.js ImageMagick&GM在嘗試加載有效圖像時都會導致錯誤127

然而,當我嘗試使用ImageMagick的打開圖像(或克,對於這個問題,我都試過)我得到錯誤127.具體來說,ImageMagick的報告:

{"timedOut":false,"killed":false,"code":127,"signal":null} 

我知道該文件存在(因爲它已正確上傳到S3存儲桶),並且我可以通過fs對其進行操作(例如,重命名),但是我找不到任何關於錯誤代碼127的文檔來確定IM失敗的原因。思考,也許有關於上傳到強大的文件,使其無法正確讀取一個奇怪的現象,我嘗試使用ImageMagick加載在同一文件夾一個簡單的「test.jpg放在」形象:

im.identify('test.jpg', function(err, features){ 
     if(!err) 
     { 
      // my image processing code 
     } 
     else 
     { 
      // my err handling code; spits out the error above 
     } 
    }); 

不幸的是,這儘管我確信test.jpg是一個很好的格式正確的圖像,但它仍以完全相同的方式失敗。

那麼,任何人都可以幫助我理解127是什麼錯誤,以及爲什麼ImageMagick會在fs能夠讀取文件時拋出它... ...?

+0

操作系統? ImageMagick是如何安裝的? ImageMagick的版本? –

+0

OSX ImageMagick && GM均通過NPM安裝,例如, 「npm install imagemagick」,僅在今天上午執行 ImageMagick的版本...是否有輸出功能?看不到它用console.log(im)的一個骨頭方法打印; –

+2

POSIX錯誤127 is basiclly'命令未找到'。這聽起來像ImageMagick沒有安裝。 Node.js ImagicMagick庫是ImagicMagic CLI工具的包裝器。 –

回答

0

Derp。我沒有安裝ImageMagick。我認爲NPM安裝是所有必需的;不知道有額外的依賴,並且錯誤信息是有點神祕;)

2

這些是一些PHP命令來查找Imagemagick的路徑,它應該確認它已安裝。 有時在php中只有使用convert會出現問題,而您需要使用完整路徑;像/ usr/local/bin/convert

echo "<pre>"; 
system("type convert"); 
system('which convert',$path); print_r($path); 
echo "</pre>"; 

我知道你沒有使用php,但你仍應該可以使用這些方法。

1

確保「轉換」安裝

sudo易於得到更新

sudo易於得到安裝ImageMagick的 - 修復缺失

相關問題