zoukankan      html  css  js  c++  java
  • 生成二维码的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");

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

    }

  • 相关阅读:
    Linux下安装JDK
    Flink源码阅读(五)——Flink中任务相关的核心类简析
    使用CloudFlare Worker 来免费部署 JSProxy 服务
    Nginx:进程调度
    Javassist基本用法汇总
    IO
    IO
    springcloud3(五) spring cloud gateway动态路由的四类实现方式
    架构设计(二) 互联网网关平台对比
    Python 的协程
  • 原文地址:https://www.cnblogs.com/chenligeng/p/8496538.html
Copyright © 2011-2022 走看看