ZXing是一个开源Java类库用于解析多种格式的1D/2D条形码。目标是能够对QR编码、Data Matrix、UPC的1D条形码进行解码。 其提供了多种平台下的客户端包括:J2ME、J2SE和Android。
示例代码:
import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com.google.zxing.MultiFormatWriter; import com.google.zxing.WriterException; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; import java.io.File; import java.io.IOException; import java.io.OutputStream; import java.util.HashMap; import java.util.Map; /** * 二维码工具类 */ public class QRCodeUtil { private static final int width = 300;// 默认二维码宽度 private static final int height = 300;// 默认二维码高度 private static final String format = "png";// 默认二维码文件格式 private static final Map<EncodeHintType, Object> hints = new HashMap();// 二维码参数 static { hints.put(EncodeHintType.CHARACTER_SET, "utf-8");// 字符编码 hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);// 容错等级 L、M、Q、H 其中 L 为最低, H 为最高 hints.put(EncodeHintType.MARGIN, 2);// 二维码与图片边距 } /** * 返回一个 BufferedImage 对象 * @param content 二维码内容 * @param width 宽 * @param height 高 */ public static BufferedImage toBufferedImage(String content, int width, int height) throws WriterException, IOException { BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints); return MatrixToImageWriter.toBufferedImage(bitMatrix); } /** * 将二维码图片输出到一个流中 * @param content 二维码内容 * @param stream 输出流 * @param width 宽 * @param height 高 */ public static void writeToStream(String content, OutputStream stream, int width, int height) throws WriterException, IOException { BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints); MatrixToImageWriter.writeToStream(bitMatrix, format, stream); } /** * 生成二维码图片文件 * @param content 二维码内容 * @param path 文件保存路径 * @param width 宽 * @param height 高 */ public static void createQRCode(String content, String path, int width, int height) throws WriterException, IOException { BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints); //toPath() 方法由 jdk1.7 及以上提供 MatrixToImageWriter.writeToPath(bitMatrix, format, new File(path).toPath()); } }
二维码介绍 zxing项目是谷歌推出的用来识别多种格式条形码的开源项目,项目地址为https://github.com/zxing/zxing,zxing有多个人在维护,覆盖主流编程语言,也是目前还在维护的较受欢迎的二维码扫描开源项目之一。 zxing的项目很庞大,主要的核心代码在core文件夹里面,也可以单独下载由这个文件夹打包而成的jar包,具体地址在http://mvnrepository.
本文向大家介绍详解Android 扫描条形码(Zxing插件),包括了详解Android 扫描条形码(Zxing插件)的使用技巧和注意事项,需要的朋友参考一下 使用Android Studio 一、在build.gradle(Module:app)添加代码 下载,调用插件 二、添加权限 三、Activity代码 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希
本文向大家介绍Android中google Zxing实现二维码与条形码扫描,包括了Android中google Zxing实现二维码与条形码扫描的使用技巧和注意事项,需要的朋友参考一下 Android中google Zxing实现二维码与条形码扫描 了解二维码这个东西还是从微信中,当时微信推出二维码扫描功能,自己感觉挺新颖的,从一张图片中扫一下竟然能直接加好友,不可思议啊,那时候还不了解二维码,
问题内容: 我想为Android创建一个应用程序,它将能够扫描条形码,获取条形码中包含的信息,然后能够以某种方式使用该信息。 我不知道如何创建条形码扫描仪,所以我去了Google搜索,看来Zxing是在应用程序中实现条形码扫描仪的最常用方法。 一些链接: http://code.google.com/p/zxing/ http://awalkingcity.com/blog/2008/08/25/
在我的应用程序中,我想扫描GS1-128条形码,需要从ZXing条形码扫描仪传递FNC1字符。现在我只收到没有FNC1字符的纯文本。 是否有方法传递DecodeHintType。假设\u GS1通过Intent连接到扫描仪应用程序? 我不想在我的应用程序中包含完整的扫描仪源,而是使用意图。 在扫描仪的源代码中,我可以看到需要设置DecodeHintType才能实现:https://code.goo
如何扫描PDF417格式的条形码?我是否需要传递意向附加信息?(注意:我的设备中已经安装了Zxing条形码应用程序)。请帮帮我。这是我使用Intent应用程序中使用Zxing条形码扫描仪的代码
我已经成功地添加了条码扫描器插件在我的Androidphonegap应用程序这里是js代码,在页面上显示我能够看到条码扫描器屏幕。 这是html5页面代码 但它是如何工作的,当我打开页面时,首先加载html,但在第二个页面中,整个屏幕都被条形码扫描窗口覆盖,我想在一个DIV“scanarea”中修复这个扫描区域。但不知道如何将其固定在特定的div区域,点击按钮即可执行扫描并读取条形码。
使用ML Kit的条码扫描API,您可以读取大多数使用标准条码格式编码的数据。 条形码是将信息从现实世界传递到应用程序的一种便捷方式。特别是,使用QR码等二维格式时,您可以编码结构化数据,如联系人信息或WiFi网络凭证。由于ML Kit可以自动识别和解析这些数据,因此当用户扫描条形码时,您的应用可以进行智能响应。 iOS Android 关键功能 阅读大多数标准格式 线性格式:Codabar,Co
这是我在这里的第一个问题,所以我将尽可能与你相关。我对使用云视觉处理一些文档感兴趣,因为我需要OCR功能。我还碰巧需要读取条形码,我目前已经使用ZXing实现了这一点。 我在OCR中偶然发现了条形码块类型(https://cloud.google.com/vision/docs/reference/rest/v1/images/annotate#BlockType)但我没有成功地制作出这样一个块,