我正在尝试在Node中对图像进行降采样。我将该图像存储为base64编码字符串(例如:“data:image/png;base64,iVBOR”等)。我正在使用Sharp npm包。文档似乎表明sharp可以接受图像的文件路径或“inputBuffer”。我做了一些搜索,认为他们所指的是Buffer类。我尝试了下面的代码和其他代码,但一直收到以下错误消息:“输入缓冲区包含不受支持的图像格式。”我的问题可能是什么?如果您不确定,您能否请推荐另一个具有更清晰文档的npm包?
const downsizeProfileImgForTweet = (user, cb) => {
let imgBuffer = Buffer.from(user.profileImg, 'base64');
sharp(imgBuffer)
.resize(52, 52)
.toBuffer()
.then(data => {
console.log("success");
user.profileImg = data;
cb()
} )
.catch( err => console.log(`downisze issue ${err}`) );
}
我在网上搜遍了所有内容并进行了一些尝试,所以请原谅我这个新手的问题。非常感谢您提供的任何帮助!