详解使用zxing库生成QR-Code二维码
发布时间 - 2026-01-11 00:57:22 点击率:次详解使用zxing库生成QR-Code二维码

最近因为一些工作需要,需要根据实际的信息生成QR-Code二维码图片文件,自然想到zxing库了,具体的代码很简单,做个备忘。
首先是引入zxing库,我是使用maven构建项目的,添加依赖:
<dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.3.0</version> </dependency>
然后是测试样列代码:
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
/**
* 使用zxing库生成QRCode二维码样例程序
*
* @author 阿信sxq
*
*/
public class QrcodeDemo {
public static void main(String[] args) {
new QrcodeDemo().genQrcode("https://my.oschina.net/songxinqiang");
}
public void genQrcode(String message) {
//输出目标文件
File file = new File("E:\\qrcode.png");
if (!file.exists()) {
try {
file.mkdirs();
file.createNewFile();
} catch (IOException e) {}
}
//设置参数,输出文件
Map<EncodeHintType, String> hints = new HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
try {
BitMatrix bitMatrix = new MultiFormatWriter().encode(message, BarcodeFormat.QR_CODE,
300, 300, hints);// 生成矩阵
MatrixToImageWriter.writeToPath(bitMatrix, "png", file.toPath());// 输出图像
} catch (Exception e) {}
}
}
这里是为了做演示,内容直接生成的我空间的地址,并且目标文件也是现在家里使用的windows 的文件位置,在具体实际的使用中需要具体修改。
生成的图片是:
(调整过大小)
在这里需要说明的是,二维码中的点的大小会随二维码文字内容的多少自动变化,所以在文字内容很多的时候需要把图片的尺寸调大,否则点太小了,一般的手机扫描起来很吃力
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# zxing库生成QR-Code二维码
# zxing库生成QR-Code二维码实例
# C#利用ZXing.Net生成条形码和二维码
# Android中利用zxing实现自己的二维码扫描识别详解
# Android实现基于ZXing快速集成二维码扫描功能
# Android Zxing二维码扫描图片拉伸的解决方法
# Android Zxing二维码扫描图片拉伸问题的解决方法
# Thinkphp使用Zxing扩展库解析二维码内容图文讲解
# 的是
# 我是
# 在这里
# 希望能
# 很简单
# 做个
# 谢谢大家
# 阿信
# 是为了
# 家里
# 样例
# 在文字
# 太小了
# IOException
# HashMap
# util
# File
# import
# java
# io
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何快速搭建高效简练网站?
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤
Laravel如何生成URL和重定向?(路由助手函数)
Laravel如何使用Blade组件和插槽?(Component代码示例)
JavaScript如何操作视频_媒体API怎么控制播放
如何在阿里云通过域名搭建网站?
ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】
开心动漫网站制作软件下载,十分开心动画为何停播?
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
Android自定义listview布局实现上拉加载下拉刷新功能
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析
香港服务器建站指南:外贸独立站搭建与跨境电商配置流程
Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】
Laravel如何优化应用性能?(缓存和优化命令)
Laravel如何使用Eloquent进行子查询
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】
香港服务器选型指南:免备案配置与高效建站方案解析
如何确认建站备案号应放置的具体位置?
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
php结合redis实现高并发下的抢购、秒杀功能的实例
JavaScript如何实现错误处理_try...catch如何捕获异常?
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何用景安虚拟主机手机版绑定域名建站?
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
Laravel怎么自定义错误页面_Laravel修改404和500页面模板
Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
Laravel如何实现用户密码重置功能?(完整流程代码)
佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】
晋江文学城电脑版官网 晋江文学城网页版直接进入
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
如何在景安服务器上快速搭建个人网站?
如何用美橙互联一键搭建多站合一网站?
百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭
Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区
制作公司内部网站有哪些,内网如何建网站?
QQ浏览器网页版登录入口 个人中心在线进入
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)

