Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript NodeJs,生成转换_Javascript_Node.js_Imagemagick_Spawn - Fatal编程技术网

Javascript NodeJs,生成转换

Javascript NodeJs,生成转换,javascript,node.js,imagemagick,spawn,Javascript,Node.js,Imagemagick,Spawn,我想使用spawn在节点内执行convert 此命令运行时没有任何错误: var args = [ 'img1.jpg', 'img2.jpg', '-gravity', 'center', '-composite', '-' ]; var ls = spawn('convert',args); ls.stderr.on('data', function (data) { console.log('stderr: ' + data); }); 但当我尝试这一个: var

我想使用
spawn
节点内执行
convert

此命令运行时没有任何错误:

var args = [
  'img1.jpg',
  'img2.jpg',
  '-gravity', 'center',
  '-composite', '-'
];

var ls = spawn('convert',args);
ls.stderr.on('data', function (data) {
   console.log('stderr: ' + data);
});
但当我尝试这一个:

var args = [
  'img1.jpg',
  '\\( img2.jpg -resize 10x10 \\)',
  '-gravity', 'center',
  '-composite', '-'
];
var ls = spawn('convert',args);
ls.stderr.on('data', function (data) {
   console.log('stderr: ' + data);
});
获取此错误:

stderr: convert: unable to open image `\( img2.jpg -resize 10x10 \)': No such file or directory @ error/blob.c/OpenBlob/2702.
convert: no decode delegate for this image format `JPG -RESIZE 10X10 \)' @ error/constitute.c/ReadImage/504.
convert: no images defined `-' @ error/convert.c/ConvertImageCommand/3257.
我找到了答案: 参数必须拆分为所有:

var args = [
  'img1.jpg',
  '\\(','img2.jpg','-resize','10x10','\\)',
  '-gravity', 'center',
  '-composite', '-'
];

美好的我在使用.execFile时遇到了类似的问题。我的问题是,我将“-resize 10x10”作为一个数组项,而不是将它们拆分为两个参数。