`
itace
  • 浏览: 182754 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

QRCode二维码生成

 
阅读更多

使用开源google.zxing

依赖jar包:core-3.3.1.jar,javase-3.3.1.jar

 

http://mvnrepository.com/artifact/com.google.zxing/core/3.3.1

http://mvnrepository.com/artifact/com.google.zxing/javase/3.3.1

 

public class QRCodeUtil {

	/**
	 * 生成二维码
	 * @param outputStream
	 * @param content
	 * @param size
	 * @param imageFormat
	 * @return
	 * @throws Exception
	 */
	public static boolean generateQRCode(OutputStream outputStream,String content, int size, String imageFormat)
					throws Exception {
		Hashtable<EncodeHintType, Object> hintMap = new Hashtable<EncodeHintType, Object>();
		hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
		hintMap.put(EncodeHintType.MARGIN,0);
		QRCodeWriter qrCodeWriter = new QRCodeWriter();
		BitMatrix byteMatrix = qrCodeWriter.encode(content,BarcodeFormat.QR_CODE, size, size,hintMap);
		MatrixToImageWriter.writeToStream(byteMatrix, imageFormat, outputStream);
		return true;
	}
	
	/**
	 * 识别二维码
	 * @param file
	 * @return
	 * @throws Exception
	 */
	public static String recogniseQRCode(File file) throws Exception{
		String contents = null;

		MultiFormatReader formatReader = new MultiFormatReader();

		BufferedImage image;
		try {
			image = ImageIO.read(file);
			LuminanceSource source = new BufferedImageLuminanceSource(image);
			Binarizer binarizer = new HybridBinarizer(source);
			BinaryBitmap binaryBitmap = new BinaryBitmap(binarizer);

			Map<DecodeHintType, Object> hints = new HashMap<DecodeHintType, Object>();
			hints.put(DecodeHintType.CHARACTER_SET, "UTF-8");

			com.google.zxing.Result result = formatReader.decode(binaryBitmap, hints);
			contents = result.toString();
			
		} catch (Exception e) {
			e.printStackTrace();
		}

		return contents;
	}
	public static void main(String[] args) {
		String contents = "bacd";
		try {
			File file = new File("E:/temp/qrcode.jpg");
//			OutputStream os = new FileOutputStream(file);
//			generateQRCode(os, contents,200, "jpg");
			System.out.println(recogniseQRCode(file));
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		
		
	}
	
	
}

 

分享到:
评论

相关推荐

    qrcode 二维码生成器

    《深入理解qrcode二维码生成器:融合Pyside2与Python技术》 在数字化时代,二维码作为一种便捷的信息传递工具,已经广泛应用于各个领域。而利用编程语言生成个性化、功能丰富的二维码,更是技术发展的体现。本文将...

    Java QRCode二维码生成与识别 开源

    Java QRCode二维码生成与识别是Java编程领域中的一个重要技术,主要应用于数据编码和快速信息交换。QRCode(Quick Response Code)是一种二维条码,能够存储大量的文本信息,包括字母、数字、汉字等,并且可以被各种...

    QRcode二维码生成控件VB调用QrCode控件即可生成.zip

    QRcode二维码生成控件在VB中的应用主要涉及到的是软件开发中的图形用户界面(GUI)设计以及数据编码技术。VB(Visual Basic)是Microsoft公司推出的一种面向对象的编程语言,广泛用于开发Windows应用程序。在这个...

    QRCode二维码生成器, C#, 支持中间图片,中间文字,头部文字。直接可用

    QRCode二维码生成器是一款基于C#编程语言开发的实用工具,专为生成具有自定义功能的二维码而设计。它不仅能够生成基本的二维码,还具备在二维码中间插入图片和文字,以及添加头部文字的能力,使得生成的二维码更具...

    QRCode二维码生成与识别.rar

    此压缩包"QRCode二维码生成与识别.rar"包含了一个使用IDEA2017开发的项目,该项目经过测试,能够生成普通的二维码以及含有图片的特殊二维码,并且具备二维码识别功能。 首先,我们来了解一下二维码的基本概念。...

    QRCode二维码生成小工具

    本项目是一个用C#语言编写的QRCode二维码生成小工具,通过引用QRCode类库,用户可以方便地生成二维码图像。 在C#中,生成二维码主要依赖于第三方库,如ZXing.Net(又名 BarcodeWriter)。ZXing(Zebra Crossing)是...

    QRCode二维码生成实例

    QRCode二维码生成实例是一个基于Eclipse的Web工程,旨在提供二维码生成的具体实现。二维码(Quick Response Code)是一种二维条码,能够存储大量的信息,如文本、URL、联系人信息等,广泛应用于移动支付、产品追溯、...

    .net QRCode二维码生成小工具最新源码

    .NET QRCode二维码生成小工具是基于C#编程语言和.NET框架开发的一款实用程序,它能够帮助用户快速便捷地创建和生成二维码。此工具的核心技术在于QRCode编码算法,这是一种广泛应用于移动设备和物联网中的二维条形码...

    XE10+QRcode 二维码生成工具

    【XE10+QRcode 二维码生成工具】是一款专业且用户友好的二维码生成软件,它提供了丰富的自定义选项,使得创建个性化二维码变得轻而易举。这款工具的主要特点包括: 1. **设置二维码颜色**:在传统的黑白二维码基础...

    QRCode二维码生成源代码

    QRCode二维码生成源代码是一种用于在各种应用中创建和显示二维码的技术。二维码,全称Quick Response Code,快速响应码,是二维条形码的一种形式,能够存储大量的信息,如文字、网址、联系信息等,并且可以被手机...

    java QRcode二维码生成包

    Java QRcode二维码生成包是一种用于在Java环境中生成和解析二维码的工具,主要遵循QRCODE和ACTEC等国际标准。这个代码包为开发者提供了一种高效且便捷的方式,以生成适用于移动设备读取的二维码图像,进而应用于各种...

    QRcode二维码生成源代码

    QRcode二维码生成源代码是一种用于编码数据的工具,它基于开放标准,被广泛应用于各种场景,如网址链接、名片信息、电子票务等。二维码(Quick Response Code)是由日本Denso Wave公司发明的一种二维条码,它能存储...

    QRcode二维码生成工具

    本项目聚焦于“QRcode二维码生成工具”,利用libqrencode库来创建二维码,并借助Qt框架在用户界面(UI)上进行展示。以下是关于这个工具及其相关技术的详细说明。 首先,libqrencode是一个开源的二维码编码库,它...

    qrcode二维码生成器

    生成 qrcode 二维码, 可直接生成bmp图片

    .net-QRCode二维码生成组件源码

    .NET QRCode二维码生成组件是一种用于在.NET环境中创建和显示二维码的工具。该组件源码的提供使得开发者可以深入了解其工作原理,并可以根据实际需求进行自定义修改和扩展。下面将详细介绍.NET QRCode二维码生成组件...

    c#QRCode二维码生成与解码

    总结,C# QRCode二维码生成与解码涉及了编码、解码以及可能的图形界面设计。利用ZXing.Net库,可以轻松地实现这些功能。通过学习和实践,你不仅可以理解二维码的工作原理,还能掌握C#中处理图像和用户交互的基础知识...

    qrcode二维码生成所需jar包

    qrcode二维码生成所需jar包,qrcode二维码生成所需jar包,qrcode二维码生成所需jar包

    QRCode二维码生成组件(珍藏版)

    因为项目的需要,需要在网站中增加一个生成二维码分析网址的功能,在谷歌大幅度抽筋的情况下无奈使用百度。百度N多,找到一些项目,但是可用性不强。终于在codeplex上找到一个“神器”,这个“神器”可以很方便的...

    ewm_ewm_

    "QRCode二维码生成,非常方便的二维码生成控件" 这段描述进一步确认了这一点,它告诉我们这个资源或工具是用来快速、便捷地创建二维码的。 二维码生成器的工作原理是将各种信息(如文本、网址、联系信息、电子名片...

    QRcode二维码生成器

    二维码(QR Code)是一种二维条形码,...以上就是关于在Android平台上开发“QRcode二维码生成器”的主要技术要点和流程。通过学习和实践这些知识点,开发者可以创建出功能完善的二维码生成应用,满足用户多样化的需求。

Global site tag (gtag.js) - Google Analytics