用 gm 处理上传图片,总是出现 Error: spawn ENOENT 的问题
发布于 1年前 作者 minglei1202 2205 次浏览 最后一次编辑是 10个月前

如题,代码为

var path = req.files.avatar.path;
var originImg = imageMagick(path);
exec('chmod 777 '+path,function(err){
    if(err) console.log(err);
    else{
        originImg.resize(250, 250)
        .autoOrient()
        .write('public/images/'+req.files.avatar.name,function(err){
            if(err) console.log(err);
            else res.send({status:1});;
        })
    }
})

求大神解答!

6 回复

问题出在第三行,ENOENT指路径不可到达,你可以console.log(path)一下,然后看是否能直接cd到。

或者环境变量配置的有问题

无语了,我按照官方文档在mac下通过 brew 安装了ImageMagick之后还是和楼主报一样的错?求解啊!来个实例吧!

应该是路径问题了…把路径打印出来然后直接用ImageMagick 试一下那个路径能不能用…

对了,gm 默认用的是 graphicmagick… 如果要用imagemagick 需要设置一下…

找问题找过来的, 看看这个https://github.com/Homebrew/homebrew/issues/6891 我更具这个和命令行的提示操作了一遍后,好了

回到顶部