如何在Java中使用QRGen创建QRCode

在我以前的一篇文章中 ,我们了解了如何使用Zxing Java库创建QRCode及其等效的SVG。 Zxing库不再得到积极维护,为此,Zxing库周围有一个名为QRGen的包装,该包装提供了更高级别的API和用于生成QR代码的构建器语法。

在本文中,我们将看到如何使用QRGen库生成QR码图像。

设置Maven依赖项

QRGen库位于Mulesoft Maven存储库中。 您可以使用以下pom条目将其包括在应用程序依赖项中:

<dependencies><!-- https://mvnrepository.com/artifact/com.github.kenglxn.qrgen/javase --><dependency><groupId>com.github.kenglxn.qrgen</groupId><artifactId>javase</artifactId><version>2.5.0</version></dependency>
</dependencies><repositories><repository><id>mulesoft</id><url>https://repository.mulesoft.org/nexus/content/repositories/public/</url></repository>
</repositories>

用于QR代码生成的Fluent Builder API

下面的代码片段显示了QR码图像的生成,默认情况下,它是在临时文件中创建的,我们使用Files.copy()将其复制到我们的项目位置:

 File file = QRCode.from( "www.google.com" ).to(ImageType.PNG) File file = QRCode.from( ).to(ImageType.PNG) .withSize( 200 , 200 ) .file();  String fileName = "qrgen-qrcode.png" ;  Path path = Paths.get(fileName);  if ( Files.exists(path)){ Files.delete(path);  }  Files.copy(file.toPath(), path); 

彩色QR码

使用流畅的API,我们甚至可以生成彩色的QR代码,如下所示:

 Path colorPath = Paths.get( "qrgen-color-qrcode.png" );  if ( Files.exists(colorPath)){ Files.delete(colorPath);  }  file = QRCode.from( "www.google.com" ) .withColor(Color.RED.getRGB(), Color.WHITE.getRGB()) .withSize( 200 , 200 ) .withErrorCorrection(ErrorCorrectionLevel.Q) .file();  Files.copy(file.toPath(), colorPath); 

完整的代码可以从这里下载。

翻译自: https://www.javacodegeeks.com/2019/04/create-qrcode-using-qrgen-java.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/343249.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤教育】国家开放大学2018年春季 8625-22T老年心理健康 参考试题

编号&#xff1a;8625 座位号 2017&#xff5e;2018学年度第二学期期末考试 老年心理健康试题 2018年7月 一、名词解释&#xff08;本大题共6小题&#xff0c;每题5分&#xff0c;共30分&#xff09; 期待性焦虑 忧郁&#xff1a; 急躁&#xff1a; 暴躁&#xff1a; 心理…

蓝牙的原理,蓝牙耳机怎么连接手机

蓝牙技术是一种无线数据和语音通信的通信协议&#xff0c;它是一种基于低成本的近距离的无线连接&#xff0c;为固定和移动设备监理通信环境的一种近距离无线连接技术。 蓝牙的作用 蓝牙使今天的一些便携式移动设备和计算机是被能够不需要线路就能相互链接&#xff0c;并且可以…

关于工业交换机技术的简单总结

工业交换机&#xff0c;应用于工业控制领域的以太网交换机设备&#xff0c;使用的是透明而统专一的TCP/IP协议&#xff0c;本身与商属业网络在数据链路层、网络层、协议层等方面并无本质区别&#xff0c;接下来飞畅科技的小编来为大家详细介绍下工业交换机技术&#xff0c;感兴…

【渝粤教育】国家开放大学2018年春季 8661-21T传感与检测技术 参考试题

科目编号&#xff1a;8661 座位号 2017-2018学年度第二学期期末考试 传感与检测技术 试题 2018年 7 月 一、单选题&#xff08;本大题共6小题&#xff0c;每小题4分&#xff0c;共计24分&#xff09; &#xff08;★请考生务必将答案填入到下面对应序号的答题框中★&#xff0…

oracle内连接使用,Oracle中的联合查询-自然连接/外连接/内连接

自然连接select *from r1 natural [inner] join r2 natural [inner] join r3where P;select A1,A2from r1natural [inner] joinr2,r3 where r2.Ar3.B;自然连接中&#xff0c;匹配关系(relation&#xff0c;表)中属性(attribute&#xff0c;列)的属性名称相同的所有列&#xff0…

【渝粤教育】国家开放大学2018年秋季 0033-21T工程数学 参考试题

试卷代号&#xff1a;0049 座位号 2018——2019学年度第一学期期末考试 法 律 文 书 试 题 2019年1月 答题框&#xff1a; 下列几项&#xff0c;不属于公安机关制作的法律文书的是_______&#xff1f; A&#xff0e; 起诉意见书 B&#xff0e; 立案决定书 C&#xff0e; 不立…

物联网中的无线通信模块到底是什么

物联网市场的爆发式增长速度&#xff0c;离不开无线通信模块产品的强有力的拉动&#xff0c;无线通信模块也是物联网的核心&#xff0c;但是很多人只知道物联网却对于组成物联网的无线通信模块知之甚少&#xff0c;所以下面就让我们一起来了解一下&#xff0c;物联网中的无线通…

【渝粤教育】国家开放大学2018年秋季 0149-21T现代汉语 参考试题

编号&#xff1a; 0176 2018-2019年度第一学期期末考试 电机学&#xff08;1&#xff09; 试 题 2019 年 1 月 一、填空题&#xff08;每空4分&#xff0c;共40分&#xff09; 1&#xff0e;已知变压器变比为5&#xff0c;原边电压U1为220V。电流I1为&#xff0c;漏抗X1为0.2…

光纤交换机按照级别可分为3种

我们经常都有听说过光纤交换机和光纤收发器&#xff0c;其中光纤交换机是一种高速的网络传输中继设备&#xff0c;又叫做光纤通道交换机、SAN交换机&#xff0c;它较普通交换机而言&#xff0c;采用了光纤电缆作为传输介质。光纤传输的优点是速度快、抗干扰能力强。光纤交换机主…

基于NB-IOT的智能烟感应用方案

据国家有关部门发布的2018年火灾数据统计&#xff0c;全国共发生火灾23.7万起&#xff0c;造成1407人死亡&#xff0c;伤798人。直接财产损失36.75亿元&#xff0c;其中居民住宅火灾10.7万起&#xff0c;超过全年火灾总数的45%&#xff0c;其原因与我国当前火灾预防基础设施建设…

php static与self,PHP5.3新特性static与self区别

很多人都说&#xff0c;PHP 简单&#xff0c;入门门槛较低&#xff0c;但是要学精通确很难。随着 PHP 不断的发展&#xff0c;新特性不断的增加&#xff0c;同时又得兼容老版本 PHP4 的一写语法特征&#xff0c;初学者在学习 PHP 时&#xff0c;显然就不再那么容易了。特别是 P…

【渝粤教育】国家开放大学2018年秋季 0257-21T高级英语听力(1) 参考试题

试卷代号&#xff1a;0269 2018-2019年度第一学期考试 文学概论试题 2019年1月 一、选择题&#xff08;请在下面的答题框内写上正确答案的序号&#xff09;&#xff08;每小题3分&#xff0c;共30分&#xff09; 1&#xff0e;在魏晋时期&#xff0c;南朝宋文帝建立“四学”即…

java常见_关于Java的常见误解

java常见Java是世界上使用最广泛的语言&#xff08;需要引用&#xff09;&#xff0c;每个人对此都有自己的见解。 由于它是主流&#xff0c;所以通常会嘲笑它&#xff0c;有时是对的&#xff0c;但有时批评并没有触及现实。 我将尝试解释我最喜欢的5个关于Java的误解。 Java速…

【渝粤教育】国家开放大学2018年秋季 0341-21T高级英语听力(2) 参考试题

试卷编号&#xff1a;0363 座位号 2018—2019学年度第一学期期末考试 市场调查与预测 试题 2019年01月 1、市场调查是在一定时间、地点条件下进行的&#xff0c;是反映市场在特定情况下的信息&#xff0c;具有一定的&#xff08; &#xff09;。 A.科学性 B.时效性 C.社会性 …

带网管工业交换机跟不带网管交换机的差别

交换机是局域网的一种核心设备&#xff0c;可以自主工作的多个计算机系统连接在一起&#xff0c;实现局部的软硬件共享的网络。通常的交换机是利用第二层的MAC地址的进行工作的&#xff0c;所以一般的家庭交换机基本上都是二层交换机。交换机有带网管的也有不带网管的&#xff…

oracle 区分配,ORACLE自动段管理的区分配大小测试

说明&#xff1a;大家知道ORACLE表空间的最小分配单元是区&#xff0c;当进行文件空间划分的时候每次增加的大小都是按区来进行的&#xff0c;且ORACLE在创建表空间的时候&#xff0c;关于EXTENT MANAGEMENT的管理会有两个选项&#xff1a;1、LOCAL AUTOALLOCATE(本地自动管理)…

【渝粤教育】国家开放大学2018年秋季 0551-22T素描(二) 参考试题

编号&#xff1a;0556 座位号 2018&#xff5e;2019学年度第一学期期末考试 广告摄影 试题 2019年1月 一、名词解释&#xff08;每小题5分,共15分&#xff09; 景深&#xff1a; 对比&#xff1a; 全景与特写&#xff1a; 广告摄影试题第1页共4页 二、问答题&#xff08;每…

通讯模块板载天线设计方法

注&#xff1a;本文来自 成都亿佰特 蛇形板载天线是无线通讯模块应用最广泛的一种天线类型&#xff0c;应用在蓝牙、WiFi、ZigBee等对性能要求不高、但对空间要求比较高的领域。今天就让成都亿佰特小编给大家普及一下蛇形板载天线的相关知识吧~ 作为天线工程师&#xff0c;每…

检查两个列表在Java中是否相等

介绍&#xff1a; Java中的列表是按自然顺序排列的。 因此&#xff0c;如果两个列表包含相同顺序的完全相同的元素&#xff0c;则认为它们是相等的。 在本教程中&#xff0c;我们将看到如何在Java中比较两个列表是否相等。 我们还将介绍仅比较两个列表中的元素并忽略其顺序的方…

【渝粤教育】国家开放大学2018年秋季 0680-22T会计基础知识 参考试题

编号&#xff1a;0689 座位号 2018&#xff5e;2019学年度第一学期期末考试 老年心理健康试题 2019年1月 一、名词解释&#xff08;本大题共6小题&#xff0c;每题5分&#xff0c;共30分&#xff09; 期待性焦虑 忧郁&#xff1a; 急躁&#xff1a; 暴躁&#xff1a; 心理…