• java生成二维码


    具体代码如下,作为一个新手,期待与你一起交流:

     1 import java.awt.Color;  
     2 import java.awt.Graphics2D;  
     3 import java.awt.image.BufferedImage;  
     4 import java.io.File;  
     5   
     6 import javax.imageio.ImageIO;  
     7   
     8 import com.swetake.util.Qrcode;
     9 public class QRCodeEncoderHandler {
    10    /**
    11     * 生成二维码(QRCode)图片
    12     * @param content
    13     * @param imgPath
    14     */
    15     public void encoderQRCode(String content,String imgPath){
    16         try{
    17             Qrcode qrcodeHandler = new Qrcode();  
    18             qrcodeHandler.setQrcodeErrorCorrect('M');  
    19             qrcodeHandler.setQrcodeEncodeMode('B');  
    20             qrcodeHandler.setQrcodeVersion(7);  
    21   
    22             System.out.println(content);  
    23             byte[] contentBytes = content.getBytes("utf-8");  
    24   
    25             BufferedImage bufImg = new BufferedImage(140, 140,  
    26                     BufferedImage.TYPE_INT_RGB);  
    27   
    28             Graphics2D gs = bufImg.createGraphics();  
    29   
    30             gs.setBackground(Color.WHITE);  
    31             gs.clearRect(0, 0,30000,30000);  
    32   
    33             // 设定图像颜色 > BLACK  
    34             gs.setColor(new Color(0,0,0,255));  
    35   
    36             // 设置偏移量 不设置可能导致解析出错  
    37             int pixoff = 2;  
    38             // 输出内容 > 二维码  
    39             if (contentBytes.length > 0 && contentBytes.length < 120) {  
    40                 boolean[][] codeOut = qrcodeHandler.calQrcode(contentBytes);  
    41                 for (int i = 0; i < codeOut.length; i++) {  
    42                     for (int j = 0; j < codeOut.length; j++) {  
    43                         if (codeOut[j][i]) {  
    44                             gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3);  
    45                         }  
    46                     }  
    47                 }  
    48             } else {  
    49                 System.err.println("QRCode content bytes length = "  
    50                         + contentBytes.length + " not in [ 0,120 ]. ");  
    51             }  
    52   
    53             gs.dispose();  
    54             bufImg.flush();  
    55   
    56             File imgFile = new File(imgPath);  
    57   
    58             // 生成二维码QRCode图片  
    59             ImageIO.write(bufImg, "png", imgFile);   
    60         }catch (Exception e) {
    61             // TODO: handle exception
    62             e.printStackTrace(); 
    63         }
    64     }
    65     public static void main(String[] args) {
    66         String imgPath = "D://Michael.jpg";  
    67           
    68         String content = "姓名:**"  
    69                 + "
    
    电话:135********"  
    70                 + "
    
    Email:******4@qq.com" + "
    
    Email2:******@163.com" +"
    
    QQ :******";  
    71   
    72         QRCodeEncoderHandler handler = new QRCodeEncoderHandler();  
    73         handler.encoderQRCode(content, imgPath);  
    74   
    75         System.out.println("encoder QRcode success");  
    76     }
    77 }
  • 相关阅读:
    Hive sql
    Hive严格模式
    Hive 分区表和分桶表
    hive
    Hive内部表与外部表区别详解
    HDFS
    Hadoop
    MySQL数据库优化
    Mysql常用存储引擎介绍
    Day12-Mysql服务日志类型及增量恢复命令
  • 原文地址:https://www.cnblogs.com/caoleiCoding/p/6372031.html
Copyright © 2020-2023  润新知