Mj1*_*992 3 node.js graphicsmagick
我正在尝试从网址加载图片的尺寸.到目前为止,我已尝试使用,GraphicsMagick但它给了我ENOENT错误.
这是我写的代码到目前为止.
var gm = require('gm');
...
gm(img.attribs.src).size(function (err, size) {
if (!err) {
if( size.width>200 && size.height>200)
{
console.log('Save this image');
}
}
});
Run Code Online (Sandbox Code Playgroud)
哪里img.attribs.src包含url source path图像.
更新
的价值 img.attribs.src
http://rack.1.mshcdn.com/assets/header_logo.v2-30574d105ad07318345ec8f1a85a3efa.png
https://github.com/nodeca/probe-image-size它完全按照你的要求进行,没有严重的依赖性.此外,它只下载必要的文件和平.
例:
var probe = require('probe-image-size');
probe('http://example.com/image.jpg', function (err, result) {
console.log(result);
// => {
// width: xx,
// height: yy,
// type: 'jpg',
// mime: 'image/jpeg',
// wUnits: 'px',
// hUnits: 'px'
// }
});
Run Code Online (Sandbox Code Playgroud)
免责声明:我是这个包的作者.
小智 5
你想要做的是先下载文件.最简单的方法是使用请求模块.很酷的事情是,无论request和gm可以使用流.使用流和gm的标识命令(如大小,格式等)时,您需要记住的唯一事项是您需要设置bufferStream选项true.更多信息在这里.
var gm = require('gm');
var request = require('request');
var url = "http://strabo.com/gallery/albums/wallpaper/foo_wallpaper.sized.jpg";
var stream = request(url);
gm(stream, './img.jpg').size({ bufferStream: true }, function (err, size) {
if (err) { throw err; }
console.log(size);
});
Run Code Online (Sandbox Code Playgroud)
您也可以在磁盘上下载文件(也可以使用请求)然后gm正常使用.
| 归档时间: |
|
| 查看次数: |
6449 次 |
| 最近记录: |