准备工作

  1. 下载项目需要使用的jar包(ORCode.jar)
    个人提供这个jar包路径(可以直接下载就使用)
    链接:https://pan.baidu.com/s/1g0ck9Bm1JP8IPemc-MiHuQ
    提取码:pzpa
    2.先简介下面代码用的一些东西(先看完,再看代码)
    2.1 排错率
    可选L(7%)、M(15%)、Q(25%)、H(30%),排错率越高可存储的信息越少,但对二维码清晰度的要求越小(比如选择了L可以存储的内容更多,选H的存储的内容会少很多)
    2.2 设置版本
    版本有1-40个。其中每加一个版本,二维码的两个边长都增4,比如版本1为2121矩阵,则版本7为4545的矩阵(最高40版本是177*177的矩阵),
    2.3 设置背景颜色和前景色
    这个里面有Color类里面自带的很多颜色
    2.4 imgPath
    指的是二维码生产在电脑的那个地方和名字(自己写路径)。
    2.5 content
    指二维码的内容。(可以放很多,比如数字,中文,也可以放网址)

运行代码

package com.wangcong;import com.swetake.util.Qrcode;import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;public class two {public static void main(String[] args) {String imgPath = "E:/code.png";         // 二维码保存路径// 跳转的内容,如果http://则当做文字处理String content = "好好学习,天天向上,努力敲代码学JAVA";// 创建封装类QrCodeAssis assis = new QrCodeAssis(imgPath, content);boolean result =  assis.createCode(480, 480);if (result) {System.out.println("二维码生成成功!");} else {System.out.println("二维码生成失败!");}}
}/*** 使用QRCode生成二维码*/
class QrCodeAssis{private String imgPath;         // 二维码保存路径private String content;         // 二维码内容/*** imgPath 二维码保存路径, content 二维码内容]*/QrCodeAssis(String imgPath, String content) {this.imgPath = imgPath;this.content = content;}/*** boolean 二维码是否生成成功*/boolean createCode(int width, int height) {boolean flag = true;try {Qrcode qrcode = new Qrcode();           // 创建Qrcode对象// 排错率可选(%)-L(7):M(15):Q(25):H(30)qrcode.setQrcodeErrorCorrect('L');qrcode.setQrcodeEncodeMode('B');qrcode.setQrcodeVersion(3);             // 设置版本(可选)width = width >= 100 ? width : 100;     // 宽度至少100height = height >= 100 ? height: 100;   // 高度至少100// 创建画布和画图设备BufferedImage img = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR);Graphics2D draw = img.createGraphics();draw.setBackground(Color.WHITE);        // 设置背景色draw.clearRect(0, 0, width, height);    // 清空原始内容draw.setColor(Color.BLACK);             // 设置前景色int posOff = 2;     // 设置偏移量,避免输出点重叠// 设置内容编码byte[] codeContent = this.content.getBytes("utf-8");// 生成二维数组,500是内容大小,根据自己的内容大小进行设定if (codeContent.length > 0 && codeContent.length < 500) {boolean[][] qrcodeOut = qrcode.calQrcode(codeContent);// 将内容写入到图片中for (int i = 0; i < qrcodeOut.length; i++) {for (int j = 0; j < qrcodeOut.length; j++) {// 如果当前位置有像素点if (qrcodeOut[j][i]){// 写入图片draw.fillRect(j * 16 + posOff, i * 16 + posOff, 16, 16);}}}}draw.dispose();                                // 关闭画图设备img.flush();                                   // 刷新缓冲区File file = new File(imgPath);ImageIO.write(img, "png", file);    // 保存图片} catch (Exception e) {e.printStackTrace();flag = false;}return flag;}
}

先正常生成一个好好学习的二维码,如下图

然后,在自己的电脑上找到图片的路径。(为上面的imgPath)
生成二维码如下图:

识别图中二维码会出现内容:
下面是一下测试代码:
1.排错率选择问题
当把排错率选择H时
内容长度太长所以验证了排错率越高可存储的信息越少
最后就是一个设置前景颜色和背景颜色的东西,大家可以根据自己的喜欢去设置一些颜色。

JAVA生成二维码(一)相关推荐

  1. java 生成二维码 QRCode、zxing 两种方式

    版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢. https://blog.csdn.net/testcs_dn/article/details/ ...

  2. 二维码相关---java生成二维码名片,并且自动保存到手机通讯录中...

    二维码相关---java生成二维码名片,并且自动保存到手机通讯录中... 技术qq交流群:JavaDream:251572072 1.首先介绍一个api.   Zxing是Google提供的关于条码 ...

  3. java生成二维码打印到浏览器

    java生成二维码打印到浏览器 解决方法: pom.xml的依赖两个jar包: <!-- https://mvnrepository.com/artifact/com.google.zxing/ ...

  4. Java生成二维码带LOGO底部标题竖版字体

    前言 Java后端生成二维码 底部 侧面带有标题,可调节字号 参考文章 使用Java生成二维码图片(亲测) Reborn_YY使用Java生成二维码图片 图标素材库 Java后台生成图片,前台实现图片 ...

  5. java生成二维码,并在前端展示。

    java生成二维码,并在前端展示,扫码实现下载功能. 后端生成二维码以流的形式 前端接收二维码并展示 后端生成二维码以流的形式 这是以流的形式展示二维码.当然也可以以文件的格式,文件格式就是Path ...

  6. java生成二维码(链接生成二维码)

    Java二维码如何生成? awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import com. ...

  7. java生成二维码到文件,java生成二维码转成BASE64

    java生成二维码到文件,java生成二维码转成BASE64 如题,利用java和第三方库,把指定的字符串生成二维码,并且把二维码保存成图片,转换成BASE64格式. 需要的jar文件: packag ...

  8. java生成二维码扫描跳转到指定的路径URL

    java生成二维码扫描跳转到指定的路径URL 导入依赖 <dependency><groupId>com.google.zxing</groupId><art ...

  9. Java 生成二维码 zxing生成二维码 条形码 服务端生成二维码 Java生成条形码

    Java 生成二维码 zxing生成二维码 条形码 服务端生成二维码 Java生成条形码 一.关于ZXing 1.ZXing是谷歌开源的支持二维码.条形码 等图形的生成类库:支持生成.和解码功能. G ...

  10. java 生成二维码后叠加LOGO并转换成base64

    1.代码 见文末推荐 2.测试 测试1:生成base64码 public static void main(String[] args) throws Exception {String data = ...

最新文章

  1. C/C++中static关键字用法汇总
  2. RandomRooms:用于3D目标检测的无监督预训练方法(ICCV2021)
  3. 关注Cortex-M处理器,M0、M3、M4简单对比
  4. Java核心技术点之集合框架
  5. Spring Boot2.x-10 基于Spring Boot 2.1.2 + Mybatis 2.0.0实现多数据源,支持事务
  6. 2022 USNews全美大学排行榜出炉!普林斯顿霸榜,哥大哈佛MIT并列第二
  7. html5星期,HTML5 时钟
  8. 语言const的生命周期_如何理解一门编程语言2——以复制构造函数为例
  9. 【重点】LeetCode 135. Candy
  10. centos7 安装 卸载docker
  11. 智能客服搭建(4) - 语音流的分贝计算
  12. 个人发卡网站源码内置2套模板 对接码支付
  13. 利用模版元编程将传统冒泡排序性能提升两倍以上
  14. drozer 找不到java_自己安装drozer时出现各种问题的解决
  15. 浏览器刷新页面导致vuex数据丢失问题如何解决?
  16. AlphaGo论文的译文,用深度神经网络和树搜索征服围棋:Mastering the game of Go with deep neural networks and tree search
  17. BPI 流程优化和BPR流程重组
  18. Android MVP详解
  19. 有趣的动态壁纸如何制作
  20. 微信朋友圈营销如何做好头像_昵称_签名_背景基础设置?

热门文章

  1. 作为有经验的程序员如果不懂Lambda表达式就说不过去了吧,建议收藏!!!
  2. IP数据报的检验(计算机网络)
  3. 计算机科学前沿技术导论论文,计算机科学技术导论论文.doc
  4. 【数据库学习】关系数据库总结
  5. python xlrd模块_新手菜鸟Linux学习之路
  6. hdu 5175 Misaki's Kiss again (抑或运算+公式变形)
  7. 从性格色彩认知了解自己
  8. [GDOI2016][树链剖分+主席树]疯狂动物城
  9. Git使用时无.ssh目录:/.ssh: No such file or directory
  10. JavaScript 高级3 :函数进阶