Tag: node imagemagick

用imagemagick与NodeJs平铺图像

有了这个脚本,我可以将我的(4096×2048)图像拼接成32个图块(512×512)。 我想给每个导出的图像配一个“X,Y,Z”坐标。 现在我想总是保持Z为0。 例: 输出1-0-0.jpg 输出1-1-0.jpg var http = require("http"); var im = require("imagemagick"); var server = http.createServer(function(req, res) { im.convert(['img.jpg','-crop','512×512','output.jpg'], function(err) { if(err) { throw err; } res.end("Image crop complete"); }); }).listen(8080); 除此之外,对于这个愚蠢的问题,不要将图像名称放入脚本中,我可以调用GET请求来裁剪并获取所有图像作为服务。 提前致谢

node.js将imagemagick的输出上传到AWS S3

我有一个问题操纵imagemagick图像,然后上传到S3。 由此产生的对象有不同(更大)的大小,似乎是腐败的。 如果我做了一个中间步骤,并将输出保存到本地tmp文件,并将其读回,然后上传结果一切似乎很好。 这是不起作用的代码。 im.resize({ srcData: imageObject.Body, width: variant.width, height: variant.height, customArgs: ['-auto-orient'] }, function(err, stdout, stderr) { if (err) { // This resize completed successfully log.err('Failed calling imageMagick, bail out', err); callback(err); return; } var fileName = cfg.aws.s3.uploadDir + photo.imageId + '/' + variant.width + 'x' + variant.height + '.jpg'; log.info('Storing image at S3 […]

ImageMagick识别报告不正确的GIF帧数

我正在使用ImageMagick来做一些GIF图像的东西。 我的一个步骤是identify图像中的帧数。 我通过node-imagemagick (和后面的gm )调用identify ,如下所示: identify -format '%T,%w,%h ' test.gif 大多数情况下,我正确地得到53帧空间分隔的53个值。 但是有时候我会得到47或50帧的相同的GIF图像 (有53帧)。 这怎么可能发生? 我在同一时间运行convert -coalesce -append test.gif other.gif ,但它不应该触摸原始图像,对不对? 此外,我检查和原始图像就好,即使错误的帧数报告。 我甚至不能一致地重现这一点。 我在哪里寻找问题? 这似乎发生在我同时运行多个ImageMagick进程时(在不同的文件上)。 我在2013-12-11使用ImageMagick 6.8.7-9 Q16 x86_64。 有问题的图片: (但是我发生过这种情况,其他图像。)

imagemagick与nodejs不工作

我试图调整与node-imagemagick库的图像,但它不工作。 我用来resize的代码是 im.resize({ srcPath: __dirname+'originalimage.jpg', dstPath: __dirname+'resized.jpg', width: 50 }, function(err, stdout, stderr){ if (err) throw err; }); 它会抛出错误 Error: Command failed: Invalid Parameter – -set at ChildProcess.<anonymous> (E:\NodeJsDevelopment\node_modules\imagemagick\imagemagick.js:64:15) at ChildProcess.EventEmitter.emit (events.js:91:17) at Process._handle.onexit (child_process.js:674:10)

寻找imagemagick nodejs npm?

我有好几天使用node-imagemagick ,并已经意识到它有错误。 它有大约100个分支,其中一些解决了我遇到的一些问题,但很难弄清楚我应该使用哪个分支。

NodeJS gm同步获取图像大小

我正在使用gm并尝试根据其大小来处理图像。 由于“大小”getter需要callback函数,我不能在下面的行中使用大小。 我想要做的就是这样: function processImage(url) { var img = gm(this.getImgStream(url)); var width, height; img.size(function(err, val) { width = val.width; height = val.height; }); // I want to use width here, but it's undefined when this line is executed. if (width > 500) width = 500; return img.resize(width) } 我想在下面的resize方法中使用宽度。 有没有办法让大小同步或等待callback完成? 我不想尽可能长时间使用ivars。