我在节点中使用 imagemagick 时遇到了困难。它不断出错并显示以下消息:
/usr/src/love/mean/node_modules/imagemagick/imagemagick.js:156
geometry = result['geometry'].split(/x/);
^
TypeError: Cannot call method 'split' of undefined
at null.callback (/usr/src/love/mean/node_modules/imagemagick/imagemagick.js:156:39)
at Accumulator.finish (/usr/src/love/mean/node_modules/imagemagick/imagemagick.js:60:55)
at ChildProcess.<anonymous> (/usr/src/love/mean/node_modules/imagemagick/imagemagick.js:86:11)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:743:16)
at Socket.<anonymous> (child_process.js:956:11)
at Socket.EventEmitter.emit (events.js:95:17)
at Pipe.close (net.js:465:12)
代码非常简单:
var im = require('imagemagick');
im.identify('li14_beach.jpg', function(err, features){
if (err) throw err;
console.log(features);
// { format: 'JPEG', width: 3904, height: 2622, depth: 8 }
});
该图像li14_beach.jpg
与节点可执行文件位于同一目录中。
我有ImageMagick 6.5.4-7 2014-02-10 在CentOS 6上运行。这些命令Convert
和Identify
可通过命令行获得。奇怪的是,以上在 Ubuntu 上运行良好。
谢谢