我有一个后端Node.js的endpoint,它可以接受包含QR码的base64格式图片并返回一个16位字母数字字符串。(我正在使用qrcode-reader包)
然而,我遇到了一个错误,说我需要传递一个具有宽度和高度的图像缓冲区。由于npm上许多图像包仅支持.png或.jpg格式,因此我不确定如何从base64图像字符串中获取宽度和高度。
您有任何建议吗?我该如何获得base64图片的宽度和高度?
然而,我遇到了一个错误,说我需要传递一个具有宽度和高度的图像缓冲区。由于npm上许多图像包仅支持.png或.jpg格式,因此我不确定如何从base64图像字符串中获取宽度和高度。
您有任何建议吗?我该如何获得base64图片的宽度和高度?
function readQR(){
return function(req, res){
// Load base64 image
var base64Image = req.body.image;
var decodedImg = decodeBase64Image(base64Image);
var imageBuffer = decodedImg.data;
qr.callback = function(err, result){
if(err) console.log(err);
// Regex check whether it is 16 letter alphanumeric
if(/^(\w{16,16})$/.test(result)) res.json(result);
else res.json({
error: 'Invalid dmac address'
})
}
qr.decode(imageBuffer);
}
}