问题 错误:使用node.js和imagemagick编写EPIPE


我迷失了这个错误的来源,我希望你能帮助我。我是节点的新手,我正在尝试使用imagemagick调整图像大小:

var express = require('express'), 
fs = require('fs'),
gm = require('gm'),
imagemagick = require('imagemagick'),
var gm = require('gm').subClass({ imageMagick: true });
var app = express();


app.get('/', function (req, res) {
    console.log(__dirname + "/public/photos/4af1e720-a662-11e3-952c-61812ab60f67.jpg");
    imagemagick.resize({
           srcData: fs.readFileSync(__dirname + "/public/photos/4af1e720-a662-11e3-952c-61812ab60f67.jpg", 'binary'),
           width: "400"
    }, function(err,stdout,stderr){
           if (err) console.log(err);
           fs.writeFile(__dirname + "/public/photos/thumbnail/4af1e720-a662-11e3-952c-61812ab60f67.jpg", stdout, 'binary');
    });
});

我得到以下内容:

我已经检查过文件夹缩略图/存在,并且图像存在。你知道还有什么可以发生吗?

/Users/ik/Dropbox/snapgram/public/photos/4af1e720-a662-11e3-952c-61812ab60f67.jpg

events.js:72
    throw er; // Unhandled 'error' event
          ^
Error: write EPIPE
    at errnoException (net.js:904:11)
    at Object.afterWrite (net.js:720:19)
computername:snapgram ik$ 

12724
2018-03-11 20:56


起源

你能找到从哪里来的吗?它也发生在我身上。 - Hey Hey
我在node.js上随机使用Meteor应用程序时出现完全相同的错误。任何想法? - acemtp


答案:


我收到同样的错误并发现了这个问题:

https://github.com/aheckmann/gm/issues/209

您可能需要安装imagemagick和graphicsmagick。这解决了我的问题。


8
2018-06-15 16:33



我安装了graphicsmagick和imagemagick到Windows但仍然收到错误。 - digz6666


确保您的计算机上安装了imagemagick和graphicsmagick。

要在ubuntu上安装graphicsmagick,

$ sudo add-apt-repository ppa:dhor/myway
$ sudo apt-get update
$ sudo apt-get install graphicsmagick

3
2017-07-04 07:39



我安装了graphicsmagick和imagemagick到Windows但仍然收到错误。 - digz6666