我找到了节点模块image-size,并想用它来获取base64编码图像的尺寸。本教程提供了以下示例以获取尺寸:
var sizeOf = require('image-size');
var dimensions = sizeOf('images/funny-cats.png');
console.log(dimensions.width, dimensions.height);
有人在第二个答案的注释中写了一个here,它也适用于base64图像。所以我尝试了以下方法:
var img = Buffer.from(base64, 'base64');
var dimensions = sizeOf(img);
console.log(dimensions.width, dimensions.height);
但是我遇到TypeError:不支持的文件类型:undefined(文件:undefined)
如何将图像大小包的sizeOf-Method与变量中包含的base64字符串一起使用?
答案 0 :(得分:1)
尝试一下
var img = Buffer.from(base64.substr(23), 'base64');
var dimensions = sizeOf(img);
console.log(dimensions.width, dimensions.height);
substr(23)
切断了data:image/jpeg;base64,
,这对于从base64数据正确创建Buffer
是必要的。