条形码处理类库 ZXing

Apache
Java
跨平台
2009-06-24
红薯

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());
  }
}
的码云指数为
超过 的项目
加载中
此软件有 5 条评论,请先登录后再查看。

条形码处理类库 ZXing 3.3.3 发布,支持 Java 9

ZXing 3.3.3 已发布,ZXing 是一个开源 Java 类库,可用于解析多种格式的 1D/2D 条形码。目标是能够对 QR 编码、Data Matrix、UPC 的 1D 条形码进行解码。 该版本更新内容主要包含: 一些修复...

2018/06/25 15:50

没有更多内容

加载失败,请刷新页面

没有更多内容

2
回答
zxing如何更改输出的条形码的颜色?

最近遇到一个项目,需要输出的条形码是红色的,请问zxing是否可以设置条形码的颜色?如果不可以,java是否有其他办法可以实现?

2018/11/03 10:38
8
回答
barcode4j和zxing哪个好用,各有什么优缺点

最近想搞个二维码的功能,网上找些资料看到有两个开源插件,barcode4j和zxing,现在想问问哪个好用,各有什么优缺点,有用过的大神给解释下

2016/01/31 15:04
4
回答
zxing二维码识别率提高求助!谢谢!

识别率偏低,微信能识别,但zxing无法识别 纯java后台方式

2018/04/03 09:09
5
回答
有人知道微信用的是什么扫码库吗?

有人知道微信用的是什么扫码库吗?zxing?zbar?怎么对焦那么快,识别那么叼?

2013/06/24 16:49
2
回答
jdk1.5的环境,使用zxing生成二维码

jdk1.5的环境,使用zxing生成二维码,报错java.lang.UnsupportedClassVersionError: Bad version ...

2016/05/03 13:22
1
回答
zxing扫码不成功的问题

zxing源码demo运行在安卓4.2+500W摄像头的开发板上,结果发现扫描的时候并没有出现那几个定位的小黄点,导致无法扫描,log如下,那个箭头指向的...

2016/01/12 14:33
2
回答
求zxing详解,我要知道这个东西解析的详细说明

我要知道如何调用zxing解析二维码的方法(方法名),如何获得解析结果。网上找不到详细说明。求解!

2016/05/13 17:15
1
回答
Zxing是怎么区分码制的?

Zxing是怎么区分码制的?比如在识读的时候怎么区分条码是PDF417还是QR?

2016/11/17 08:49
2
回答
java zxing 在条形码下方添加数字

我现在只能搞出这种图片 但是我想要的是下面这种 谁知道用zxing怎么给这玩意儿下面添加数字,别叫我换barcode4j 只喜欢zxing

2016/10/09 16:52
2
回答
java zxing能否生成二维码和一维码在同一张图片上
魔力猫 的回答 2016/10/09 15:53
最佳答案
你完全可以生成两张图片,然后拼在一起嘛。

没有更多内容

加载失败,请刷新页面

zxing备忘录

1. java.lang.IllegalArgumentException: Crop rectangle does not fit within image data. zxing默认是横屏,改竖屏后需改动其他几个地方: 1. DecodeHandler.decode中 添加旋转数据的方法,并...

2014/11/27 16:11
1.6K
0
初识ZXing

ZXing是一个开源Java类库用于解析多种格式的1D/2D条形码。目标是能够对QR编码、Data Matrix、UPC的1D条形码进行解码。 其提供了多种平台下的客户端包括:J2ME、J2SE和Android。 项目官网: ...

2012/11/29 10:38
934
0
ZXing开发详解

博客转载自:https://blog.csdn.net/skillcollege/article/details/38852183 什么是Z*? 在Android平台做过二维码相关模块的肯定都熟知ZXing开源项目,Z*是一个开源Java类库用于解析多种格式的...

2018/04/03 15:55
18
0
杂项-QRCode:ZXing

ylbtech-杂项-QRCode:ZXing 1.返回顶部 1、 ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。Zxing可以实现使用手机的内置的摄像头完成...

2018/06/21 11:59
31
0
zxing之ViewfinderView

zxing官方BarcodeScanner.apk注释

2014/11/27 10:47
6.1K
0
聊聊zxing的qrcode

## 序 本文主要研究下zxing的qrcode的一些代码。 ## maven ``` com.google.zxing core 3.3.1 com.google.zxing javase 3.3.1 ``` ## QRCodeWriter core-3.3.1-sources.jar!/com/google/zxin...

2017/10/26 22:52
132
0
ZXing CaptureActivity黑屏问题

ZXing的CaptureActivity在其他activity切换回来时会出现黑屏现象,跟踪发现surfaceDestroyed并不一定能调用到。 在ZXing项目找到zxing不支持tabhost的答复。 Project Member #1 srowen The ...

2014/06/30 14:35
518
0
Zxing 二维码扫描

ZXing---- 开源项目 版本 2015-5-15 github----https://github.com/zxing/zxing core ---- ZXingCore_2015_5_15.jar android_core ---项目中 有所修改 删除不需要的文件 delete...

2015/06/11 16:19
171
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部