java生成个性化二维码

基础代码:https://blog.csdn.net/wangwenjie1997/article/details/93777976

代码修改处

1.修改白色透明度
2.修改BufferedImage对象Type
在这里插入图片描述

测试

import java.awt.image.BufferedImage;

public class QrCodeTest {

    public static void main(String[] args) {
        String text = "https://www.baidu.com/";//二维码内容
        String format = "jpg";  //生成的二维码图片的格式
        String logoFilePath = "F:\\test\\CodeTest\\logo.jpg";//二维码logo图片路径
        String bgFilePath = "F:\\test\\CodeTest\\bg.jpg";//二维码背景图片路径
        String savePath = "F:\\test\\CodeTest\\";
        int width = 300;    //二维码图片的宽
        int height = 300;   //二维码图片的高

        try {
            //生成二维码图片
            //无logo,无背景二维码
            BufferedImage qrCodeNoLogoNoBg = QrCodeUtil.encodeQrCode(text, width, height);
            //无logo,无背景二维码添加背景
            BufferedImage qrCodeNoLogoWithBg = QrCodeUtil.addBgImg(qrCodeNoLogoNoBg, bgFilePath, 0, 0);
            QrCodeUtil.writeToFile(qrCodeNoLogoWithBg, format, savePath+"qrCodeNoLogoWithBg."+format);
            //无logo,无背景二维码添加logo
            BufferedImage qrCodeWithLogoNoBg = QrCodeUtil.addLogo(qrCodeNoLogoNoBg,logoFilePath);
            //有logo,无背景二维码添加背景
            BufferedImage qrCodeWithLogoWithBg = QrCodeUtil.addBgImg(qrCodeWithLogoNoBg, bgFilePath, 0, 0);
            QrCodeUtil.writeToFile(qrCodeWithLogoWithBg, format, savePath+"qrCodeWithLogoWithBg."+format);

            //二维码添加文字描述(大致实现,只限一行,没有换行)
            BufferedImage qrCodeAddText = QrCodeUtil.addText(qrCodeNoLogoWithBg, "123124", 30);
            QrCodeUtil.writeToFile(qrCodeAddText, format, savePath+"qrCodeAddText."+format);


            //二维码解析
//            BufferedImage image = ImageIO.read(new File("F:\\test\\CodeTest\\qrCodeWithLogoWithBg.jpg"));
            String qrCodeContent3 = QrCodeUtil.decodeQrCode(qrCodeNoLogoWithBg);
            System.out.println("解析无logo,有背景二维码的图片的内容为: " + qrCodeContent3);
            //有背景,有logo
            String qrCodeContent4 = QrCodeUtil.decodeQrCode(qrCodeWithLogoWithBg);
            System.out.println("解析有logo,有背景二维码的图片的内容为: " + qrCodeContent4);
            //无背景添加文字描述
            String qrCodeContent5 = QrCodeUtil.decodeQrCode(qrCodeAddText);
            System.out.println("无背景添加文字描述: " + qrCodeContent5);


        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

输出

在这里插入图片描述
为什么解析不出来呢,是因为生成二维码图片太花了,而我又懒的找干净的背景图片,就凑合着生成二维码 。可是识别不出来的二维码,再好看又有什么用呢[抠鼻]

二维码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值