- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
经过 10 多个小时的搜索和尝试,我终于决定在这里提问。我正在使用 android.hardware.camera2
库从设备相机获取图像。现在我想使用 zxing 库自动处理位图并解码数据矩阵代码(如果图片上有任何代码)。有一个计时器每秒处理图像五次,一切正常,但它不识别任何数据矩阵代码。到目前为止,我有以下代码:
public String readDataMatrix(Bitmap bitmap) {
int width = bitmap.getWidth(),
height = bitmap.getHeight();
int[] pixels = new int[width * height];
bitmap.getPixels(pixels, 0, width, 0, 0, width, height);
RGBLuminanceSource source = new RGBLuminanceSource(width, height, pixels);
BinaryBitmap bBitmap = new BinaryBitmap(new HybridBinarizer(source));
DataMatrixReader reader = new DataMatrixReader();
Result rawResult = null;
try {
rawResult = reader.decode(bBitmap);
String result = reader.decode(bBitmap).getText();
return result;
} catch (NotFoundException | ChecksumException | FormatException e) {
e.printStackTrace();
}
if (rawResult != null) {
Log.i(TAG, "==============================================");
Log.i(TAG, rawResult.getText());
Log.i(TAG, "==============================================");
}
return rawResult != null ? rawResult.getText() : null;
}
当用 QRCodeReader
替换 DataMatrixReader
并尝试使用二维码或 MultiFormatReader
尝试时,这甚至不起作用。
我尝试处理的每张图像都被 zxing 条形码扫描仪应用程序正确解码,所以问题出在代码中。
如果有人能告诉我这是如何工作的,我将非常高兴,因为我相信在这之后我将成为 creatively-cursing-java 的世界冠军 ^^
本尼
P.S.:我在关于 zxing 的每一个线程中都尝试了每一个解决方案,所以这真的是我最后的选择。
最佳答案
public String readDataMatrix(Bitmap bitmap) {
int width = bitmap.getWidth();
height = bitmap.getHeight();
byte[] data = bitmap.getRowBytes();
Result rawResult = null;
Log.e("C2", data.length + " (" + width + "x" + height + ")");
PlanarYUVLuminanceSource source = new PlanarYUVLuminanceSource(data, width, height);
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
try {
rawResult = mQrReader.decode(bitmap);
onQRCodeRead(rawResult.getText());
} catch (ReaderException ignored) {
/* Ignored */
} finally {
mQrReader.reset();
}
Result rawResult = null;
if (rawResult != null) {
Log.i(TAG, "==============================================");
Log.i(TAG, rawResult.getText());
Log.i(TAG, "==============================================");
}
return rawResult != null ? rawResult.getText() : null;
}
这对我有用,使用自定义 PlanarYUVLuminanceSource :
final public class PlanarYUVLuminanceSource extends LuminanceSource {
private final byte[] mYuvData;
public PlanarYUVLuminanceSource(byte[] yuvData, int width, int height) {
super(width, height);
mYuvData = yuvData;
}
@Override
public byte[] getRow(int y, byte[] row) {
if (y < 0 || y >= getHeight()) {
throw new IllegalArgumentException("Requested row is outside the image: " + y);
}
final int width = getWidth();
if (row == null || row.length < width) {
row = new byte[width];
}
final int offset = y * width;
System.arraycopy(mYuvData, offset, row, 0, width);
return row;
}
@Override
public byte[] getMatrix() {
return mYuvData;
}
@Override
public boolean isCropSupported() {
return true;
}
}
关于java - 使用 zxing 从 camera2 拍摄的照片中解码数据矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31820824/
我正在为我的移动应用程序项目使用 worklight。我的问题是,我不知道在哪里可以找到这些文件(zxing-all-in-one.cpp 和 zxing-all-in-one.h),用于在 Xcod
我在 .NET 上使用 zxing 取得了巨大成功,并试图获得解码 QR 条码的最佳速度(我有很多事情要做——1.8M)。我正在使用的代码(它的一部分): // Create Barcode deco
我使用 com.google.zxing.qrcode.QRCodeWriter 对数据进行编码,并使用 com.google.zxing.client.j2se.MatrixToImageWrite
我项目的包名是 com.mohit.verma 我不想在外部安装 zxing 条码扫描仪应用程序。 我只想使用库文件。 那么我应该在哪里更改包名称? 任何帮助,将不胜感激... 我的代码如下: ba
我正在尝试使用说明 here 构建 Zxing android 应用程序(不是库) .我能够构建 jar 但无法构建应用程序本身。当我运行 mvn package android:apk 时,出现以下
本文整理了Java中jsc.kit.zxing.zxing.ui.ZXingFragment类的一些代码示例,展示了ZXingFragment类的具体用法。这些代码示例主要来源于Github/Stac
我正在开发一个通过 ZXing 在 Android 上扫描条形码的应用程序。我关注这个tutorial . 但是当我运行我的应用程序时,出现 NoClassDefFoundError 并且应用程序已完
我已经下载了适用于 Android 的 Zxing Barcode Scanner 代码,但我在源代码中找不到软件包 com.google.zxing。我认为该项目缺少库或 JAR 文件。谁能帮我找到
我正在尝试做一个应用程序来为多个条形码的信息创建一个最终的二维码我扫描过的。我想知道您如何将 ZXing 库导入您的代码?假设用户已经在他们的手机中安装了 ZXing 扫描仪,我是否可以只连接应用程序
我正在尝试使用 ZXing 2.1 库获得成功的结果。我在 Mac OS X 10.7.5 上使用 Java 1.6。我能够编码文本但不能解码任何图像。相反,我得到的只是 com.google.zxi
我正在使用 ZXing.Net 0.16.4.0 解码保存在 中的二维码文件'wwwroot/qrr' 文件夹,但我收到编译时错误: Cannot convert from 'System.Drawi
我已经将 Zxing 作为库集成并在我的应用程序中使用。我调用 Intent intent = new Intent("com.google.zxing.client.android.SCAN");
我正在尝试将 zxing 扫描仪合并到我的 Angular 应用程序中,在按照在线指南进行操作后,它出现了以下我似乎无法解决的错误, 'zxing-scanner' 不是已知元素: 如果“zxing-
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我想实现来自 https://github.com/dm77/barcodescanner 的条码扫描器库.像这样运行项目后出现错误 java.lang.NoSuchFieldError: No st
我使用此代码生成我的二维码 ZXing.Net ( http://zxingnet.codeplex.com/ ) IBarcodeWriter writer = new BarcodeWriter
我想使用 ZXing 库制作一个二维码扫描器。在我的 build.gradle 中,我添加了以下代码: repositories { mavenCentral() maven {
我正在试验 ResultPoints,它返回与图像中条形码相关的点。 对于二维码,ResultPoints 返回一组 4 个点,它们是二维码每个角的四个框的坐标。 当我对条码进行同样的实验时,它返回两
我正在开发一个 android 应用程序,在其中我生成数据矩阵并允许用户使用 zxing 输入它们来扫描它们。 但是,出现了一个许可证问题,询问 zxing 扫描的所有格式是否都可用开源。 这与应用程
我将 ZXing.Net.Mobile 用于这样的表单 var scanPage = new ZXingScannerPage();
我是一名优秀的程序员,十分优秀!