gpt4 book ai didi

javascript - 使用javascript解码二进制QR码数据

转载 作者:行者123 更新时间:2023-11-28 10:47:49 26 4
gpt4 key购买 nike

我有一个二维码的数组,其中 0/1 表示白色和黑色(我可以根据需要更改它)。数组的每个部分都是二维码的 Y 行。

我需要编写一些东西,可以将 QR 码数据解码为可用的东西,它可以是许多不同类型的 QR 码,所以我也需要能够检测它是什么类型。

这可以用纯 JavaScript 来完成吗?我无法运行 JQuery。

它看起来像这样(40 行中的前两行),但我是通过 for 循环从字符串生成它,这样我就可以将它变成其他任何东西。

1 1 1 1 1 1 1 0 1 1 0 0 0 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1
1 0 0 0 0 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1 1 1 0 1 0 0 0 0 1 1 1 1 0 1 1 1 0 0 1 1 1 0 1 0 0 0 0 0 1

最佳答案

这可以通过 zxing 来完成,jsqrcode - zxing 的 javascript 实现。

首先,您必须将数据保存在 BinaryMatrix 中,然后对其进行解码。

var bitMatrix = new BitMatrix(width);
bitMatrix.clear();

//for each black pixel
bitMatrix.flip(y,x);

var decoded = Decoder.decode(bitMatrix);

var decodedString = "";

for (var i = 0; i < decoded.length; i++) {
var currentWord = decoded[i];
for(var j = 0; i < currentWord.length; j++)
{
result += String.fromCharCode(parseInt(currentWord[i]));
}
}

解码然后包含一个或多个 ascii 字节数组。只需对已解码的所有数组运行循环即可。结果然后保存一个包含二维码原始字符串的字符串。

理论上这应该适用于 zxing 支持的所有类型,但我只使用二维码进行了测试。

关于javascript - 使用javascript解码二进制QR码数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39761303/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com