为了账号安全,请及时绑定邮箱和手机立即绑定

Qrcode生成的扫描不出来


package com.snxun.QRCode;

import com.swetake.util.Qrcode;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;

public class Create {

  public static void main(String[] args) throws Exception {
     Qrcode qrcode = new Qrcode();
     // 设置纠错级别
     qrcode.setQrcodeErrorCorrect('M');
     // 设置编码内容,N代表数字,A代表A-z,B代表其他字符
     qrcode.setQrcodeEncodeMode('B');
     qrcode.setQrcodeVersion(7);

     String qrdata = "DSGASDGASDG";
     // 可以正好充满二维码大小的固定公式
     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.black);
     gs.setColor(Color.WHITE);
     gs.clearRect(0, 0, width, height);

     // 如果有汉字,需要将编码转换成GB系列的
     int pixoff = 2;// 偏移量,防止解析的时候出错
     byte[] d = qrdata.getBytes("gb2312");
     if (d.length > 0 && d.length < 120) {
        boolean[][] s = qrcode.calQrcode(d);
        for (int i = 0; i < s.length; i++) {
           for (int j = 0; j < s.length; j++) {
              if (s[i][j]) {
                 gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3);
              }
           }
        }
     }

     gs.dispose();
     bufferedImage.flush();
     ImageIO.write(bufferedImage, "png", new File("src/com/snxun/QRCode/2.png"));
     ImageIO.write(bufferedImage, "png", new File("E:/code/img2.png"));
  }

}

正在回答

举报

0/150
提交
取消

Qrcode生成的扫描不出来

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号