简体   繁体   English

NodeJ,Spawn转换

[英]NodeJs, Spawn convert

I want to execute convert inside Node using spawn . 我想使用spawnNode内执行convert
this command runs without any error : 此命令运行无任何错误:

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

var ls = spawn('convert',args);
ls.stderr.on('data', function (data) {
   console.log('stderr: ' + data);
});

but when I try this one : 但是当我尝试这个时:

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);
});

getting this Error: 得到这个错误:

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.

I found the Answer: arguments must be splitted all: 我发现答案:参数必须全部分割:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM