代码生成二维码

您所在的位置:网站首页 java实现二维码生成 代码生成二维码

代码生成二维码

2024-07-15 17:05:36| 来源: 网络整理| 查看: 265

使用java生成二维码 前言使用步骤xml生成二维码二维码转url 总结

前言

Zxing Zxing 是一个开源的 Java 二维码扫描和生成库,由美国 Google 公司的一位开发者 Sean Owen 在 2006 年开发并发布,它是用 Java 语言编写的,可以方便地集成到各种应用中。 项目地址为:https://github.com/zxing/zxing

使用步骤 xml com.google.zxing core 3.4.1 com.google.zxing javase 3.4.1 生成二维码

在进行二维码生成前,需要先创建一个 MultiFormatWriter 对象,并使用 encode() 方法将文本信息转换为二维码矩阵。然后再使用 MatrixToImageWriter 类的 writeToStream() 方法将矩阵对应的二维码图片写入输出流中。

代码实现如下:

//config中包含的一些二维码信息 Map config = new HashMap(); config.put(EncodeHintType.CHARACTER_SET, "UTF-8"); config.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); config.put(EncodeHintType.MARGIN, 0); //核心代码(高度、宽度就不说了) BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, config);

解释一下里面config中的信息

CHARACTER_SET: 指定编码格式,默认值为 UTF-8。ERROR_CORRECTION: 指定纠错等级,包括四个等级:L(约可纠错 7% 的数据码字)、M(约可纠错 15% 的数据码字)、Q(约可纠错 25% 的数据码字)和 H(约可纠错 30% 的数据码字),默认值为 M。MARGIN: 指定二维码图片的边距,默认值为 0,即不留白边。 二维码转url 因为生成的二维码是以图片的形式输出,而如果想要用户看到二维码就需要我们将二维码转换为url给到前端进行渲染,可以参考图床搭建文章,进行图片上传。

那么新的问题又来了,生成的二维码需要存储在哪里?

在之前我让他指定了一个路径进行输出,如下代码: Path path = Paths.get("qrcode.png"); MatrixToImageWriter.writeToPath(bitMatrix, "PNG", path);

path是我指定的在这个当前项目中的位置去生成图片qrcode.png,那么在调用writeToPath中,指定生成的路径path的位置

然后我们将这个位置的图片在传到生成url地址的api中,最后生成网络url地址去返回给前端

qrCodeUrl = uploadFileMinio(qrCodeLocalityUrl);

那么这样操作虽然解决了问题,那么如果我们每次都要去将二维码保存在本地,是否造成了资源的浪费,这个时候我又想到了使用内存去将二维码生成的直接放在内存中上传。代码实现如下:// 转化对象为BufferedImage BufferedImage image = MatrixToImageWriter.toBufferedImage(bitMatrix); // 将image对象写入到ByteArrayOutputStream中 ByteArrayOutputStream os = new ByteArrayOutputStream(); ImageIO.write(image, "png",os); // 讲写入内存的对象写出到ByteArrayInputStream中 ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray()); // 最后调用上传图片的方法上传文件 Boolean upload = minioUtil.upload(is, "fineName", minioConfig.getBucketName()); if (upload) { qrCodeUrl = minioConfig.getUrl() + "/" + minioConfig.getBucketName() + "/" + "fineName"; } 总结

以上就是使用 Zxing 进行二维码扫描和生成的基本步骤。当然,针对不同场景,可能还需要设置一些参数和处理一些异常等操作。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭