ImageMagick错误无法调用方法Split

时间:2014-10-27 06:54:35

标签: node-imagemagick

我在节点中使用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与节点可执行文件位于同一目录中。

我在 CentOS 6 上运行 ImageMagick 6.5.4-7 2014-02-10。可以通过命令行使用命令ConvertIdentify。奇怪的是,上面的工作在Ubuntu上运行良好。

由于

1 个答案:

答案 0 :(得分:1)

我手动解决了这个问题。 刚刚编辑过imagemagick.js文件并将几个if表达式放在那里,比如

if(result['geometry']) ...

结束其他需要的