Oli*_*s_j 34 node.js graphicsmagick
当我尝试调整像这样的图像:
gm('public/uploads/1710410635.jpg')
.resize(240, 240)
.noProfile()
.write('public/uploads/1710410635_t.jpg', function (err) {
if (!err) console.log('done');
});
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
events.js:72
throw er; // Unhandled 'error' event
^
Error: spawn ENOENT
at errnoException (child_process.js:945:11)
at Process.ChildProcess._handle.onexit (child_process.js:736:34)
Run Code Online (Sandbox Code Playgroud)
我的文件结构如下:

代码在postnewsitem.js文件中执行
为什么会出现此错误以及如何解决?
编辑:GraphicsMagick工作,证明:

小智 66
安装ImageMagick并使用subClass imageMagick.
安装ImageMagick
sudo apt-get install imagemagick
Run Code Online (Sandbox Code Playgroud)使用subClass imagemagick:
var gm = require('gm').subClass({ imageMagick: true });
Run Code Online (Sandbox Code Playgroud)Mat*_*lis 11
我在Windows 7上运行了nodejs,安装了gm和imagemagick,似乎两个模块之间存在冲突,所以我用了一些googled并找出了如何避免这种情况.我添加了这一行,这解决了我的ENOENT问题:
var imageMagick = gm.subClass({ imageMagick: true });
所以代码现在看起来像这样:
var gm = require('gm');
var imageMagick = gm.subClass({ imageMagick: true });
imageMagick('test/pig.jpg').rotate('green', 45).write('test/crazy_pig.jpg', function (err) {
if (!err) console.log('crazy pig has arrived');
else console.log(err);
})
Run Code Online (Sandbox Code Playgroud)
或者你可以在需要gm时这样做,如下:
var gm = require('gm').subClass({ imageMagick: true });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31070 次 |
| 最近记录: |