`
zjgzpc
  • 浏览: 25628 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

二维码生成 QRCode

    博客分类:
  • Java
阅读更多

 

 

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

import javax.imageio.ImageIO;

import jp.sourceforge.qrcode.QRCodeDecoder;
import jp.sourceforge.qrcode.data.QRCodeImage;
import jp.sourceforge.qrcode.exception.DecodingFailedException;
public class QRCodeDecoderTest {
    
    public QRCodeDecoderTest() {
    }
    
    public static void main(String[] args) {
        
        QRCodeDecoder decoder = new QRCodeDecoder();
        
        File imageFile = new File("TestQRCode.png");
        
        BufferedImage image = null;
        
        try {
            image = ImageIO.read(imageFile);
        } catch (IOException e) {
            System.out.println("Error: "+ e.getMessage());
        }
        try {
            
        	String decodedData = new String(decoder.decode(new J2SEImage(image)),"GBK");
			
            System.out.println(decodedData);
        } catch (DecodingFailedException dfe) {
            System.out.println("Error: " + dfe.getMessage());
        } catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
        
        
    }
}
 
class J2SEImage implements QRCodeImage {
    BufferedImage image;
    
    public J2SEImage(BufferedImage image) {
        this.image = image;
    }
    
    public int getWidth() {
        return image.getWidth();
    }
    
    public int getHeight() {
        return image.getHeight();
    }
    
    public int getPixel(int x, int y) {
        return image.getRGB(x, y);
    }
    
}

 

 

import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;

import javax.imageio.ImageIO;

import com.swetake.util.Qrcode;

public class QRCodeEncoderTest {
	public static void main(String[] args) throws Exception {
		Qrcode qrcode=new Qrcode();
		qrcode.setQrcodeErrorCorrect('M');
		qrcode.setQrcodeEncodeMode('B');
		qrcode.setQrcodeVersion(7);

		String testString = "张家港电子口岸……";
		
		byte[] d =testString.getBytes("UTF-8");
		
        BufferedImage bi = new BufferedImage(139, 139, BufferedImage.TYPE_INT_RGB);
        
        // createGraphics
        Graphics2D g = bi.createGraphics();
        
        // set background
        g.setBackground(Color.RED);
        g.clearRect(0, 0, 139, 139);
        
        g.setColor(Color.BLACK);
		
		
		if (d.length>0 && d.length <123){
		    boolean[][] b = qrcode.calQrcode(d);
		    
		    for (int i=0;i<b.length;i++){
		    	
				for (int j=0;j<b.length;j++){
				    if (b[j][i]) {
				    	g.fillRect(j*3+2,i*3+2,3,3);
				    }
				}
			
		    }
		}
		
		g.dispose();
		bi.flush();

        String FilePath="c://TestQRCode.png";
        File f = new File(FilePath);
		
		ImageIO.write(bi, "png", f);
		System.out.println("doned!");
	}
	
}

 

分享到:
评论
1 楼 281460530 2013-08-08  
for (int j=0;j<b.length;j++){ 
                    if (b[j][i]) { 
                        g.fillRect(j*3+2,i*3+2,3,3); 
                    } 
                }  为什么填充宽度,高度是3 呢??

相关推荐

    二维码生成 QRCode 支持XE5 XE7

    标题和描述提到的"二维码生成 QRCode 支持XE5 XE7"表明这是一个针对Delphi XE5和XE7版本的二维码生成解决方案。 Delphi是Embarcadero公司开发的一种集成开发环境(IDE),用于编写基于Windows、macOS、iOS和Android...

    二维码生成QRCode.exe

    二维码生成QRCode.exe

    小程序二维码生成qrcode.js

    小程序二维码生成qrcode.js

    PHP 二维码生成 QRCODE生成 源码

    【PHP二维码生成技术详解】 PHP,作为一种广泛使用的服务器端脚本语言,因其开源、免费、跨平台的特性,常被用于网页开发。在信息化时代,二维码作为一种高效的信息载体,广泛应用于广告宣传、网址链接、支付凭证等...

    DelphiQRCode 二维码生成 QRCode 支持 XE5 XE7

    《DelphiQRCode:在XE5与XE7中构建二维码生成器》 DelphiQRCode是一款专为Delphi开发者设计的二维码生成库,它能够帮助开发者在XE5和XE7这两个Delphi版本中轻松实现二维码的创建。QRCode,全称Quick Response Code...

    Java生成和解析二维码1.2(QRCode)

    本代码为二维码生成和解析的Java实现代码,包括三个类和一个QRCode的jar包(一个jar包用于生成二维码,一个jar包用于读取二维码尤其用于读取的jar包不好下载,所以就一起放进来了,方便大家学习使用),一个生成...

    二维码(QRcode)生成算法 C语言/C++源码

    #二维码(QRcode)生成算法 C语言/C++ 源码 1. 根据输入字符串识别编码模式; 2. 根据输入字符串长度选择合适的QRcode版本; 3. 将编码转换为二进制位流表示为数据码字; 4. 使用多项式生成纠错码; 5. 将数据码和...

    【ASP.NET编程知识】ASP.NET实现二维码(QRCode)的创建和读取实例.docx

    ASP.NET实现二维码(QRCode)的创建和读取实例 ...ASP.NET 实现二维码(QRCode)的创建和读取非常简单,使用 ThoughtWorks.QRCode.dll 文件和 QRCodeDecoder 类可以轻松实现 QRCode 的生成和解码。

    利用Qrcode批量生成二维码

    "利用Qrcode批量生成二维码"这个主题聚焦于如何高效地创建大量的二维码,结合了QrCodeNet库的功能,它提供了批量生成、导出和排版打印的便捷服务。以下是关于这一主题的详细知识讲解: 1. **QrCode概念**:二维码是...

    二维码生成工具QRCode源代码支持中文(解决解码时中文乱码)

    QRCode源代码的提供,意味着开发者可以自行构建和定制二维码生成和解码功能,特别是在处理中文字符时避免乱码问题,这是该资源的核心价值所在。 ThoughtWorks是一家知名的全球软件咨询公司,其提供的QRCode库可能是...

    Oracle APEX生成二维码,PL/SQL生成二维码,QRCODE

    今天我们来谈一下二维码,QRCODE; 关于什么是二维码,如何生成二维码;往上一大堆的文章;像Java需要引入第三方的包,或者某些网页都要调用地方的URL来生成! 这样看起来挺麻烦的~ 实际上在oracle , 无须第三方的Jar包,也...

    js网页生成二维码插件qrcode.zip

    `js网页生成二维码插件qrcode`就是这样一个方便开发者快速实现网页内二维码生成的工具。它通过JavaScript编程语言,无需依赖其他库,即可在网页上动态生成二维码,大大简化了开发流程。 ### 1. 插件介绍 `Qrcode....

    qrcode 二维码生成器

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

    js生成二维码,qrcode.js,可配置边距

    QRCode.js 不需要任何其他的图像库或扩展,它是一个轻量级的工具,非常适合在网页中快速集成二维码生成功能。 此js可设置边距border &lt;div id="qrcode"&gt; var qrcode = new QRCode(document.getElementById("qrcode")...

    phpqrcode生成二维码

    二维码(QR Code)是一种二维条码,用于存储各种类型的数据,如网址、文本、联系方式等。在信息技术领域,特别是移动互联网应用中,...通过学习和实践,开发者可以创建出功能丰富的二维码生成系统,满足不同业务需求。

    生成二维码的QRCode.jar和java代码

    首先,`QRCode.jar`是一个包含二维码生成功能的Java类库。引入这个库后,我们可以在Java代码中调用相应的API来生成二维码图像。通常,这个库会包含一系列预定义的类和方法,比如设置二维码内容、纠错级别、尺寸等...

    Java用qrcode生成带logo二维码包含QRCode.jar

    本教程将详细讲解如何使用`QRCode.jar`库在Java中生成带有Logo的二维码,以及所需的基本步骤和关键知识点。 首先,我们需要了解`QRCode.jar`库。这是一个专门用于生成二维码的Java库,它提供了方便的API接口,使得...

    ASP生成二维码代码

    在ASP中实现二维码生成,通常需要借助第三方库或控件,例如在提供的压缩包中的"encode.dll"可能就是一个这样的组件。 "testenc.asp"可能是用于测试二维码生成功能的ASP源代码文件。在这个文件中,开发者可能通过...

    QRCode二维码生成DLL 解决全中文乱码,内有生成中文的图片不信扫一扫

    本教程将重点讨论如何通过DLL动态链接库来解决二维码生成过程中的全中文乱码和报错问题。 首先,我们要理解二维码编码的基本原理。二维码数据编码分为几个步骤:数据预处理、添加纠错码、模块分配和最终的图像生成...

Global site tag (gtag.js) - Google Analytics