目前正在编写基于node imagemagick library的基于节点的实用程序以接收流并将另一个流输出到STDOUT:
im = require('imagemagick')
request = require("request")
sampleImage = "http://upload.wikimedia.org/wikipedia/en/a/a9/Example.jpg"
request.get(sampleImage, (err, res, body) ->
prefix = "-"
switch (res.headers['content-type'])
when "image/jpeg"
prefix = "jpg:-"
when "image/png"
prefix = "png:-"
taskHash = {
srcPath: prefix
srcData: body
dstPath: -
height: 100
}
callback = (err, stdout, stderr)->
if err
console.error(err)
process.exit(1)
console.log(stdout)
im.resize(taskHash, callback)
)
收到以下错误:
events.js:72
throw er; // Unhandled 'error' event
^
Error: write EPIPE
at errnoException (net.js:904:11)
at Object.afterWrite (net.js:720:19)
已经注意到here讨论了类似的错误,但我认为这是一个单独的案例,因为我没有使用graphicsmagick库。如果不同时安装imagemagick和graphicsmagick,是否无法使用缓冲区?
答案 0 :(得分:0)
node-imagemagick需要两件事:
您必须安装缺少的库(例如,对于Ubuntu):
sudo apt-get update
sudo apt-get install imagemagick --fix-missing
它将解决您的问题