Java 生成二维码_二维码生成规则

Java 生成二维码_二维码生成规则利用Java生成二维码生成二维码的依赖下载:点击下载代码:packagecom.shuai.test02;importcom.swetake.util.Qrcode;importjavax.imageio.ImageIO;importjava.awt.*;importjava.awt.image.BufferedImage;importjava.io.File;importjava.nio.charset.StandardCharsets;publicclas

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

利用Java 生成二维码


生成二维码的依赖下载:
点击下载

代码:

package com.shuai.test02;

import com.swetake.util.Qrcode;

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

public class QrCodeEncoderHandler { 
   
    public void encoderQrCode(String text, String imPath) { 
   
        try { 
   
            Qrcode qrcodeHandler = new Qrcode();
            // 设置二维码排错率,可选L(7%)、M(15%)、Q(25%)、H(30%), 排错率越高可存储的信息越少,但对二维码的清晰度要求越小
            qrcodeHandler.setQrcodeErrorCorrect('M');
            // 编码模式: B Binary二进制
            qrcodeHandler.setQrcodeEncodeMode('B');
            qrcodeHandler.setQrcodeVersion(5);
            // UTF-8 的编码方式
            byte[] textBytes = text.getBytes(StandardCharsets.UTF_8);
            // 设置图片的大小
            BufferedImage bufImage = new BufferedImage(600, 600, BufferedImage.TYPE_INT_RGB);
            Graphics2D gs = bufImage.createGraphics();
            // 设置背景颜色
            gs.setBackground(Color.WHITE);
            gs.clearRect(0, 0, 600, 600);
            // 设定图像颜色
            gs.setColor(Color.BLACK);
            int pixoff = 2;
            // 输出内容
            if (textBytes.length > 0 && textBytes.length < 800) { 
   
                boolean[][] codeOut = qrcodeHandler.calQrcode(textBytes);
                for (int i = 0; i < codeOut.length; i++) { 
   
                    for (int j = 0; j < codeOut.length; j++) { 
   
                        if (codeOut[j][i]) { 
   
                            gs.fillRect(j * 16 + pixoff, i * 16 + pixoff, 16, 16);
                        }
                    }
                }
            }
            gs.dispose();
            bufImage.flush();
            File imgFile = new File(imPath);
            // 指定路径写图片(二维码图片)
            ImageIO.write(bufImage, "png", imgFile);
        } catch (Exception e) { 
   
            e.printStackTrace();
        }
    }

    public static void main(String[] args) { 
   
        String imPath = "F:\\" + "123" + ".png";
        String text = "老二,你个傻狍子";
        QrCodeEncoderHandler handler = new QrCodeEncoderHandler();
        handler.encoderQrCode(text, imPath);
        System.out.println("imPath:" + imPath);
    }
}

Jetbrains全家桶1年46,售后保障稳定

效果图:
Java生成的二维码
扫描结果:
微信扫描结果

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226842.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c语言函数回调详解_c语言回调函数例子

    c语言函数回调详解_c语言回调函数例子关于静态库和动态库的使用和制作方法。http://blog.csdn.net/morixinguan/article/details/52451612今天我们要搞明白的一个概念叫回调函数。什么是回调函数?百度的权威解释如下:回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实…

    2025年6月27日
    2
  • CountDownTimer_bytebuffer slice

    CountDownTimer_bytebuffer slicepublicclassCountDownTimerManager{/***总倒计时*/privatelongmillisInFuture=0;/***回调时间*/privatelongcountDownInterval;/***倒计时完成回调*/privateFinishCountDownfinishCountDown;/**

    2026年1月17日
    6
  • 聚类算法(4)–Hierarchical clustering层次聚类

    聚类算法(4)–Hierarchical clustering层次聚类目录 一、层次聚类1、层次聚类的原理及分类2、层次聚类的流程3、层次聚类的优缺点二、python实现1、sklearn实现2、scipy实现树状图分类判断一、层次聚类1、层次聚类的原理及分类1)层次法(Hierarchicalmethods)先计算样本之间的距离。每次将距离最近的点合并到同一个类。然后,再计算类与类之间的距离,将距离最近的类合并为一个…

    2025年8月15日
    3
  • c语言自定义BOOL函数

    c语言自定义BOOL函数C语言中没有BOOL类型变量,它是C++独有的,由于使用BOOL类型可以使代码更具有可读性,很多编程者都在C中自己定义了类似的应用,一般方法有两种:第一种:采用宏定义方式typedefintBOOL;#definetrue1#definefalse0或写为:#ifndefbool#defineboolint#endif#ifndeftrue…

    2022年5月30日
    89
  • 2021年最新idea激活注册码破解方法

    2021年最新idea激活注册码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    75
  • java策略模式例子_java 登录场景 策略模式

    java策略模式例子_java 登录场景 策略模式Java的策略模式中体现了两个非常基本面向对象的原则-封装变化的概念-编程中使用接口,而不是对接口的实现策略模式的定义定义一组算法,将每个算法都封装起来,并且使它们之间可以互换。策略模式使这些算法在客户端调用它们的时候能够互不影响的变化策略模式的组成抽象策略角色–策略类,通常由一个接口或者抽象类实现具体策略角色–包装了相

    2025年9月7日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号