生成二维码的JAVA

不多说,上代码

package tcc;



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

import javax.imageio.ImageIO;

import com.swetake.util.Qrcode;

/**
 *
 * @author Administrator
 *
 */
public class tcc {
    public static void getQRCode(String path, String content) throws IOException{
        
        //创建一个Qrcode类的对象
        Qrcode qrcode = new Qrcode();
        
        //设置二维码的纠错能力    L7%   M15%   Q25%   H30%
        qrcode.setQrcodeErrorCorrect('M');
        
        //设置二维码的存储形式
        qrcode.setQrcodeEncodeMode('B');
        
        //设置二维码的版本   共40个版本    1:21*21   2:25*25  ...
        qrcode.setQrcodeVersion(7);
        
        //设置字符编码
        byte[] bt = new String(content.getBytes("ISO-8859-1"),"UTF-8").getBytes();
        
        //创建一张纸
        BufferedImage image = new BufferedImage(140,140,BufferedImage.TYPE_INT_RGB);
        
        //创建一支笔
        Graphics2D g = image.createGraphics();
        
        //设置背景颜色
        g.setBackground(Color.WHITE);
        
        //填充颜色
        g.fillRect(0, 0, 140, 140);
        
        //设置前景色
        g.setColor(Color.BLACK);
        
        //javac cavaj
        if(bt.length > 0){
            boolean[][] b = qrcode.calQrcode(bt);
            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);
                    }
                }
            }
        }
        File file = new File(path);
        ImageIO.write(image, "png", file);
    }
    
    public static void main(String[] args) throws IOException {
        getQRCode("C:\\java\\tcc.png","http://www.baidu.com");

       //根据上述网址可以生成二维码
    }

}

posted on 2018-03-03 14:01  JETIME庚  阅读(129)  评论(0编辑  收藏  举报

导航