jquery-qrcode 生成和读取二维码

简介: 首先要导入jar包(生成二维码的jar和读取二维码的jar)  生成二维码:package com.imooc.qrcode;import java.awt.Color;import java.

首先要导入jar包(生成二维码的jar和读取二维码的jar)

 

 生成二维码:

package com.imooc.qrcode;

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;


/**
 * QRCode 生成方法
 * 
 * 
 * @author Administrator
 *
 */
public class CreateQRCode {

    public static void main(String[] args) {
        Qrcode x = new Qrcode();
        x.setQrcodeEncodeMode('M');//纠错等级
        x.setQrcodeEncodeMode('B');
        x.setQrcodeVersion(7);//版本
        
        
        String qrData = "http://www.baidu.com";
        int width = 67 + 12 * (7-1);
        int height = 67 + 12 * (7-1);
        
        BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
        Graphics2D gs = bufferedImage.createGraphics();
        
        
        gs.setBackground(Color.white);
        gs.setColor(Color.black);
        gs.clearRect(0, 0, width, height);
        
        
        int pixoff = 2;//偏移量
        
        byte[] d;
        try {
            d = qrData.getBytes("gb2312");
            if(d.length>0 && d.length<120){
                boolean[][] s = x.calQrcode(d);
                
                for(int i=0;i<s.length;i++){
                    for(int j=0;j<s.length;j++){
                        if(s[j][i]){
                            gs.fillRect(j*3+pixoff, i*3+pixoff, 3, 3);
                        }
                    }
                }
            }
            
            gs.dispose();
            bufferedImage.flush();
            ImageIO.write(bufferedImage, "png", new File("E:/code/img1.png"));
            
            
        } catch (Exception e) {
            e.printStackTrace();
        }
        
    }

}

 

 

 

 

生成二维码如下:

 

 

 

 

 读取二维码:

package com.imooc.qrcode;

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

import javax.imageio.ImageIO;

import jp.sourceforge.qrcode.QRCodeDecoder;


/**
 * QRCode 读取方法
 * 
 * @author Administrator
 *
 */
public class ReadQRCode {

    public static void main(String[] args) throws Exception {
        File file = new File("E:/code/img1.png");
        
        BufferedImage image = ImageIO.read(file);
        
        QRCodeDecoder codeDecoder = new QRCodeDecoder();
        String s = new String(codeDecoder.decode(new MYQRCodeImage(image)),"gb2312");
    
        System.out.println(s);
    
    }

}

 

中间类:

package com.imooc.qrcode;

import java.awt.image.BufferedImage;

import jp.sourceforge.qrcode.data.QRCodeImage;

public class MYQRCodeImage implements QRCodeImage{
    BufferedImage bufferedImage;

    public MYQRCodeImage(BufferedImage bufferedImage) {
        this.bufferedImage = bufferedImage;
    }

    @Override
    public int getHeight() {
        return bufferedImage.getHeight();
    }

    @Override
    public int getPixel(int arg0, int arg1) {
        return bufferedImage.getRGB(arg0, arg1);
    }

    @Override
    public int getWidth() {
        return bufferedImage.getWidth();
    }

}

 

运行结果:

http://www.baidu.com

 

相关文章
|
23天前
|
JavaScript 前端开发 容器
jQuery二维码生成插件
jquery.qrcode.js二维码插件允许你在网页中容易的插入二维码,可以生成表格形式的二维码,或基于canvas的图片二维码
|
7月前
|
前端开发
jquery.qrcode如何切换新的二维码
jquery.qrcode如何切换新的二维码
33 0
30jquery-qrcode生成二维码
30jquery-qrcode生成二维码
123 0
30jquery-qrcode生成二维码
|
JavaScript 前端开发
【JavaScript】关于jquery把网址变成二维码
【JavaScript】关于jquery把网址变成二维码
106 0
【JavaScript】关于jquery把网址变成二维码
|
JavaScript 前端开发 Java
使用jquery.qrcode.js生成二维码
通常生成二维码的方式有两种:第一种是java代码的形式,第二种是通过Js方式。 在这里我做个记录,用js生成二维码,可以在官网下载源码:http://jeromeetienne.github.io/jquery-qrcode/ 1.
1140 0
|
JavaScript 前端开发
jquery-qrcode生成二维码
一、jquery-qrcode   jquery-qrcode是一个为浏览器生成二维码的jquery插件。我们很容易将它集成到我们的应用。该插件也可以独立使用,也比较小。它是直接在客户端生成二维码生成。
1193 0
|
前端开发 JavaScript
使用jquery-qrcode生成二维码
一、使用jquery-qrcode生成二维码 先简单说一下jquery-qrcode,这个开源的三方库(可以从https://github.com/jeromeetienne/jquery-qrcode 获取), qrcode.
1025 0
|
2天前
|
JavaScript 前端开发
jQuery和CSS3滑动展开菜单按钮插件
这是一款jQuery和CSS3滑动展开菜单按钮插件。该滑动展开菜单按钮在用户点击主菜单按钮之后,子菜单以滑动的方式依次展开
35 21
|
3天前
|
JavaScript
jquery图片和pdf文件预览插件
EZView.js是一款jquery图片和pdf文件预览插件。EZView.js可以为图片和pdf格式文件生成在线预览效果。支持的文件格式有pdf、jpg、 png、jpeg、gif。
31 16
|
3天前
|
JavaScript
简洁实用的jQuery进度条插件
这是一款简洁实用的jQuery进度条插件。该插件使用简单,通过在页面中放置指定的HTML代码,即可生成带动画效果的进度条。