【发布时间】:2020-07-13 04:01:15
【问题描述】:
我有从 Android 和 iOS 的 react-native 的 CameraRoll 中选择 QRcode 图像的功能一旦用户选择了图像。我将使用jsQR 之类的东西对其进行解码并验证它是否是真正的二维码。
但是在 jsQR 库上,他们说他们需要接受 Uint8ClampedArray 来解码图像并读取 qr。所以我已经有了获取base64图像的功能。但找不到如何将其正确转换为 Uint8ClampedArray。
下面是我的代码:
const handleImportScan = useCallback(async () => {
try {
const base64Image = await RNFS.readFile(
photos[selected].node.image.uri,
'base64',
);
console.log('base64img:', base64Image);
// First argument below should be a 'Uint8ClampedArray'
const code = jsQR(base64Image, width, height);
if (code) {
console.log('Found QR code', code);
}
} catch (error) {
console.log('err:', error);
}
}, [photos, selected]);
我正在尝试寻找 库 或 第三方 将我的 base64 图像转换为 Uint8ClampedArray
我主要使用 PNG 保存用户 qr 生成图像。
如果有人可以提供帮助,我们将不胜感激。 谢谢
【问题讨论】:
标签: image react-native base64 qr-code uint8t