zxing qr区域判断_如何在Java中使用Zxing和JFreeSVG创建QR Code SVG?
zxing qr区域判断
在本文中,我们将研究如何使用Zxing QR代码生成库和JFreeSVG库在Java中创建QR Code SVG图像。
QR码生成
下面的代码使用Zxing库创建一个表示QR Code的
对象:java.awt.image.BufferedImage
public static BufferedImage getQRCode(String targetUrl, int width, int height) { try { Hashtable<EncodeHintType, Object> hintMap = new Hashtable<>(); hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L); QRCodeWriter qrCodeWriter = Hashtable<>(); hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L); QRCodeWriter qrCodeWriter = Hashtable<>(); hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L); QRCodeWriter qrCodeWriter = new QRCodeWriter(); BitMatrix byteMatrix = qrCodeWriter.encode(targetUrl, BarcodeFormat.QR_CODE, width, height, hintMap); QRCodeWriter(); BitMatrix byteMatrix = qrCodeWriter.encode(targetUrl, BarcodeFormat.QR_CODE, width, height, hintMap); int CrunchifyWidth = byteMatrix.getWidth(); BufferedImage image = CrunchifyWidth = byteMatrix.getWidth(); BufferedImage image = new BufferedImage(CrunchifyWidth, CrunchifyWidth, BufferedImage.TYPE_INT_RGB); image.createGraphics(); Graphics2D graphics = (Graphics2D) image.getGraphics(); graphics.setColor(Color.WHITE); graphics.fillRect( BufferedImage(CrunchifyWidth, CrunchifyWidth, BufferedImage.TYPE_INT_RGB); image.createGraphics(); Graphics2D graphics = (Graphics2D) image.getGraphics(); graphics.setColor(Color.WHITE); graphics.fillRect( BufferedImage(CrunchifyWidth, CrunchifyWidth, BufferedImage.TYPE_INT_RGB); image.createGraphics(); Graphics2D graphics = (Graphics2D) image.getGraphics(); graphics.setColor(Color.WHITE); graphics.fillRect( 0 , 0 , CrunchifyWidth, CrunchifyWidth); graphics.setColor(Color.BLACK); , CrunchifyWidth, CrunchifyWidth); graphics.setColor(Color.BLACK); for ( int i = 0 ; i < CrunchifyWidth; i++) { for ( int j = 0 ; j < CrunchifyWidth; j++) { if (byteMatrix.get(i, j)) { graphics.fillRect(i, j, 1 , 1 ); } } } ); } } } return image; } image; } catch (WriterException e) { e.printStackTrace(); throw new RuntimeException( "Error getting QR Code" ); } } ); } }
转换为SVG
下面的代码片段使用JFreeSVG将
对象转换为SVG:java.awt.image.BufferedImage
public static String getQRCodeSvg(String targetUrl, int width, int height, boolean withViewBox){ SVGGraphics2D g2 = new SVGGraphics2D(width, height); BufferedImage qrCodeImage = getQRCode(targetUrl, width, height); g2.drawImage(qrCodeImage, SVGGraphics2D(width, height); BufferedImage qrCodeImage = getQRCode(targetUrl, width, height); g2.drawImage(qrCodeImage, SVGGraphics2D(width, height); BufferedImage qrCodeImage = getQRCode(targetUrl, width, height); g2.drawImage(qrCodeImage, 0 , 0 , width, height, null ); ViewBox viewBox = ); ViewBox viewBox = null ; if ( withViewBox ){ viewBox = new ViewBox( 0 , 0 ,width,height); } ,width,height); } return g2.getSVGElement( null , true , viewBox, null , null ); } ); }
完整的代码可以在这里找到。
翻译自: https://www.javacodegeeks.com/2019/04/create-code-svg-using-zxing-jfreesvg-java.html
zxing qr区域判断
zxing qr区域判断_如何在Java中使用Zxing和JFreeSVG创建QR Code SVG?相关推荐
- java 判断是否换行_如何在java中检测换行符
是的,我已经阅读了一些关于换行符的其他帖子,但他们没有帮助我.如何在java中检测换行符 我的Java程序应该读取一个.PHP文件,并将源代码分成逐行格式.问题是我似乎无法区分一个换行符和另一个换行符 ...
- java对密码进行加密的方法_如何在JAVA中使用MD5加密对密码进行加密
如何在JAVA中使用MD5加密对密码进行加密 发布时间:2020-11-25 17:12:40 来源:亿速云 阅读:118 作者:Leah 本篇文章为大家展示了如何在JAVA中使用MD5加密对密码进行 ...
- java 正则表达式 开头_如何在Java中修复表达式的非法开头
java 正则表达式 开头 您是否遇到过这个令人难以置信的错误,想知道如何解决它? 让我们仔细阅读一下,研究如何解决表达式Java非法开头错误. 这是一个动态错误,这意味着编译器会发现某些不符合Jav ...
- java 查找链表中间元素_如何在Java中一次性查找Java中链表的中间元素
如何在一次传递中找到LinkedList的中间元素?这是一个 Java 和非Java程序员面试时经常被问到的编程问题.这个问题类似于检查回文或计算阶乘,有时也会要求编写代码.为了回答这个问题,候选人必 ...
- java soap 头_如何在Java中添加Soap标头
我有一个来自oracle的NO.net Web服务,要访问,我需要添加soap标头.如何在Java中添加soap标头? Authenticator.setDefault(new ProxyAuthen ...
- java中转json字符串_如何在Java中转义JSON字符串-Eclipse IDE技巧
java中转json字符串 在Java应用程序中工作或进行JSON解析时,通常很常见的做法是从某些资源(例如RESTful Web服务)中复制粘贴JSON字符串,然后使用Jackson库解析JSON. ...
- java整数的因式分解_如何在Java中找到整数的质数-因式分解
java整数的因式分解 编程课程中的常见家庭作业/任务之一是关于Prime Factorization. 要求您编写一个程序以找到给定整数的素因子 . 一个数字的素数因子是将精确地除以给定数字的所有素 ...
- java实现递归算法_如何在Java中实现二进制搜索算法而无需递归
java实现递归算法 by javinpaul 由javinpaul 流行的二进制搜索算法的迭代实现,用于在排序数组中查找元素. (An Iterative implementation of the ...
- java如何用反射把具体方法抽象_如何在Java 中使用泛型或反射机制对DAO进行抽象...
如何在Java 中使用泛型或反射机制对DAO进行抽象 发布时间:2020-11-26 16:07:42 来源:亿速云 阅读:80 作者:Leah 本篇文章为大家展示了如何在Java 中使用泛型或反射机 ...
最新文章
- iis配置js支持读取json文件配置
- 某大型数据中心离心式冷水机组 控制板UPS电源改造项目案例分享
- vb.net2.0 Hmac-md5加密算法
- 如果地球突然停止转动,那么接下来会发生什么?
- java编程两个超长正整数相减_【每日编程237期】数字分类
- Heap:Sunscreen(POJ 3614)
- FoneDog Toolkit iOS Data Recovery如何从iPhone恢复已删除的数据
- centos7的mysql登录
- photoshop图片放大不失真
- oracle查询所有去掉重复的数据库,ORACLE数据库查询删除重复记录的三种方法
- WordPress 前端投稿/编辑发表文章插件 DJD Site Post(支持游客和已注册用户)汉化版 免费下载...
- MySQL插入语句insert into,insert ignore into,insert into ... on duplicate key update,replace into-解决唯一键约束
- 读《沟通的方法》推荐序有感
- 思科 Packet Tracer 实验六 路由协议基本配置
- 一篇文章基础HTML总结
- IIS MIME设置
- 学计算机选择什么编程语言好一些?
- Python地理数据处理 二:Python基础知识
- 计算机专业英语被动语态举例,高考英语各种时态被动语态总结
- 【AMQP】rabbit mq 几种模式的用法
热门文章
- Sum of Paths CodeForces - 1467D
- [CodeJam 2021 Round 3] Square Free(调整法 / 字典序最小解网络流)
- Mynavi Programming Contest 2021(AtCoder Beginner Contest 201)题解
- YBTOJ洛谷P4331:数字序列(左偏树)
- 2021牛客OI赛前集训营-提高组(第五场)C-第K排列【dp】
- P1903-[国家集训队]数颜色/维护队列【带修莫队】
- P3575-[POI2014]DOO-Around the world【环形dp】
- jzoj3058-火炬手【高精度,暴力】
- 【2018.3.31】模拟赛之一-ssl2406 约数【水题】
- ssl1056-金明的预算方案【dp之有依赖的背包】