首页 > 解决方案 > NodeJS:如何将图像大小与 base64 图像一起使用?

问题描述

我找到了节点模块image-size并想用它来获取 base64 编码图像的尺寸。本教程提供了以下获取尺寸的示例:

var sizeOf = require('image-size');
var dimensions = sizeOf('images/funny-cats.png');
console.log(dimensions.width, dimensions.height);

第二个答案的评论中,有人写道它也适用于 base64 图像。所以我尝试了以下方法:

var img = Buffer.from(base64, 'base64');
var dimensions = sizeOf(img);
console.log(dimensions.width, dimensions.height);

但我得到一个 TypeError: unsupported file type: undefined (file: undefined)

如何将 image-size 包的 sizeOf-Method 与变量中的 base64 字符串一起使用?

标签: node.jsnpmbase64image-size

解决方案


试试这个

var img = Buffer.from(base64.substr(23), 'base64');
var dimensions = sizeOf(img);
console.log(dimensions.width, dimensions.height);

substr(23)cut off ,这是从您的 base64 数据data:image/jpeg;base64,正确创建 a 所必需的。Buffer


推荐阅读