【问题标题】:Unable to scan QRCode via zxing clientzxing客户端无法扫描二维码
【发布时间】:2013-03-30 15:52:58
【问题描述】:

我无法扫描具有深色背景(深粉色)和浅色 QR 码(浅粉色)的 QR 码。我已经在我的应用程序中集成了 zxing 条码扫描器来扫描代码。它非常适合浅色背景和深色二维码。

我使用默认的 zxing 条码扫描器应用程序进行了尝试。但它无法扫描此类代码。

以下是我要扫描的二维码,

请提出一些解决方案。

谢谢。

【问题讨论】:

  • 彻底解决这个问题。 stackoverflow.com/questions/8103279/… 可以解决你的问题。
  • 您也可以考虑发布一个示例二维码来演示您的问题。
  • 是的,我已经用我要扫描的二维码编辑了我的问题。请看一看。
  • 我怀疑您需要更大的对比度才能获得可靠的结果。请记住,不同设备的相机质量差异很大,因此即使某些设备可以处理此条码,其他设备也可能无法处理。
  • 是的,我明白你的意思。我确实用 Samsung Galaxy S3(高端设备)、Samsung Galaxy Nexus(高端)、Samsung Ace(中档)、LG Optimus(中档)扫描了相同的 QRCode。但没有运气。你指的是对比在二维码中?

标签: android qr-code zxing


【解决方案1】:

您包含的 QR 码的对比度对于大多数相机来说应该足够了。这里的问题是 ZXing 库不支持反向二维码。它只支持浅色背景下的深色代码。

要添加此支持,您需要自己反转图像。您可以使用一些类似于此的代码: http://www.androidsnippets.com/how-to-invert-bitmap-color

当然,您需要通过包含库来集成 ZXing 来完成此操作,而不仅仅是通过 Intent(我不知道您现在如何做),以便您可以修改一些代码。

您可以在DecodeHandler类的方法decode(byte[], int, int)中添加反转位图的代码。

【讨论】:

  • 该库很好地支持倒置条形码,在 LuminanceSource 实现中——只是它们不是 ISO 规范核心的一部分,所以它不会在 Android 应用程序中查找它们默认。有一个设置可以启用它。虽然它正在使用相机驱动程序来反转图像......
  • 好的,感谢您的评论。你能告诉我需要做哪些不同的设置来解决这个问题..
  • @GautamM。你找到反二维码的解决方案了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-12
  • 1970-01-01
  • 2013-01-05
  • 1970-01-01
  • 1970-01-01
  • 2011-11-06
  • 1970-01-01
相关资源
最近更新 更多