zxing介绍生成二维码

Kotlin: ZXing生成二维码 1. 引包 implementation "com.google.zxing:core:3.3.2" implementation "com.journeyapps:zxing-android-embedded:3.6.0" 2. 调用类QrCodeUtil的封装方法createQRImage ,获得二维码的Bitmap: object QrCodeUtil { ... 阅读详情

生成二维码实现
1)引入依赖 创建maven工程,在pom.xml中引入如下 依赖

<dependency>
            <groupId>com.google.zxing</groupId>
            <artifactId>core</artifactId>
            <version>3.3.3</version>
        </dependency>

        <dependency>
            <groupId>com.google.zxing</groupId>
            <artifactId>javase</artifactId>
            <version>3.3.3</version>
        </dependency>

2)生成二维码方法

import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import com.shanjupay.common.domain.BusinessException;
import com.shanjupay.common.domain.CommonErrorCode;
import com.shanjupay.common.util.EncryptUtil;
import org.apache.commons.lang3.StringUtils;

import javax.imageio.ImageIO;
import javax.servlet.ServletOutputStream;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.HashMap;

/**
 * <P>
 * 工具类
 * </p>
 *
 */
public class MyUtils  {

	/**
	 * 生成二维码
	 * @param content
	 * @param width
	 * @param height
	 * @return
	 */
	public String createQRCode(String content, int width, int height) throws IOException {
		String resultImage = "";
		if (!StringUtils.isEmpty(content)) {
			ServletOutputStream stream = null;
			ByteArrayOutputStream os = new ByteArrayOutputStream();
			@SuppressWarnings("rawtypes")
			HashMap<EncodeHintType, Comparable> hints = new HashMap<>();
			hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); // 指定字符编码为“utf-8”
			hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); // 指定二维码的纠错等级为中级
			hints.put(EncodeHintType.MARGIN, 1); // 设置图片的边距

			try {
				QRCodeWriter writer = new QRCodeWriter();
				BitMatrix bitMatrix = writer.encode(content, BarcodeFormat.QR_CODE, width, height, hints);

				BufferedImage bufferedImage = MatrixToImageWriter.toBufferedImage(bitMatrix);
				ImageIO.write(bufferedImage, "png", os);
				//添加 data:image/png;base64 前缀方便前端解析
				resultImage = new String("data:image/png;base64," + EncryptUtil.encodeBase64(os.toByteArray()));
				return resultImage;
			} catch (Exception e) {
				e.printStackTrace();
				throw new BusinessException(CommonErrorCode.CUSTOM, "二维码生成失败");
			} finally {
				if (stream != null) {
					stream.flush();
					stream.close();
				}
			}
		}
		return null;
	}

}
  1. 测试 编写在MyUtils类中编写main方法测试 createQRCode
public static void main(String[] args) throws IOException {
		MyUtils myUtils = new MyUtils();
		System.out.println(myUtils.createQRCode("http://www.pbteach.com/", 200, 200));
	}

4,运行main方法,输出二维码图片的base64编码:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIAQAAAACFI5MzAAABRElEQVR42u2YOxLCMAxE5XFBmSNwlBwtPlqOwhEoU3gstJLzAQYqis0MLvDELwWyVmsrop+G/MlXcheMCyatF9XZn6/s5Gp/3pZuY0lqT/OkmOjJLKl6PM3CMoLoTkIsiNKy/Z6M2PbHdA7i2sELEll4URUn6XVqS2l94bmCGck+yke35CO+71UGcxfVxQIpnhN2ImORvAwexIIMtLwIO9Hbph2EZXXaep0yE1P85Nsfivd4trOemIzaD57kWTi4Cy9BgUp2axSIZpYQPjcJT3TRJF/Sg3ZoCYapBeXanfzolqwES4jAJNTdxcIa2EkfUHyYoaa6Z4GVbP3CiNug32Gz8pO1XxA4ucez1ik1iTssupwaNZufuhxqorH9OPnhNecg6/nzngVSsvfBXqBoh/sdlphsdarx6WFqbxXMR/5fsn5LHu2h3xzh77egAAAAAElFTkSuQmCC

将以上编码拷贝到浏览器中,显示二维码图片,实际项目中由前端展示二维码。

java 使用zxing 生成二维码 package com.lyis.core.util; import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import java.awt.Shape; import java.awt.geom.RoundRectangle2D; imp 阅读详情

相关推荐

Unity结合ZXing生成二维码并保存

本文参考地址:http://blog.youkuaiyun.com/liulala16/article/details/14521979 首先要绘制图片,那么system.drawing.dll必不可少,大家可以在自己安装的Unity路径下找到mono的该文件并复制一份到当前的工程中(***\Unity\Editor\Data\Mono\lib\mono\2.0)。除了调用这个之外还有一个必备的文件调用ZX

Crystal 6197

使用zxing来生成二维码

在使用zxing生成二维码时,我们需要先准备好相关的依赖和jar包,并使用QRCodeWriter类来生成普通的二维码。无论是生成普通的二维码还是带有Logo的二维码,zxing都是一个非常实用的工具。而在二维码的生成过程中,zxing是一款非常优秀的开源库,它提供了一系列的API,可以帮助我们快速、方便地生成二维码。在使用zxing生成二维码之前,我们需要先下载zxing的jar包,并将其导入到项目中。除了普通的二维码之外,我们还可以生成带有Logo的二维码。三、生成带有Logo的二维码。

qinshengfei的专栏 6079

Springboot集成Zxing生成二维码

前言: 需求描述:用户知道链接地址,但是不想点击链接,想通过扫码访问到指定网站;这时用户就只给我一个url地址,让我给他生成一个二维码! 对Zxing的了解:   ZXing,一个支持在图像中解码和生成条形码(如二维码、PDF 417、EAN、UPC、Aztec、Data Matrix、Codabar)的库。ZXing(“zebra crossing”)是一个开源的、多格式的、用Java实现的一维/二维条码图像处理库,具有到其他语言的端口。 先看一下实现效果: 代码实现过程: 1.引入谷歌的zxing依赖

余生一个帆的博客 964

zxing生成二维码

在页面中使用img标签,并将src属性设置为一个servlet或controller的路径,通过读取数据库中的二维码字节数组生成二维码图片并显示。可以使用zxing库生成二维码,再将二维码图片转化为字节数组,存入数据库中。

MOMOGONG的博客 1984

在 Linux 虚拟机中手动安装 VMware Tools

对于 Linux 虚拟机,您可以从命令行手动安装 VMware Tools。对于 Linux 的较高发行版,请使用集成的 open-vm-tools 版本。 前提条件 有关 open-vm-tools 的操作系统兼容性的详细信息,请参见《VMware 兼容性指南》,网址为VMware Compatibility Guide - System Search。 开启虚拟机。 确认客户机操作系统正在运行。 因为 VMware Tools 安装程序是使用 Perl 编写的,请确认已在客户机操作系统中安..

m0_62526815的博客 1757

iSLIP算法实战:如何用Python模拟交换机优先级匹配(附完整代码)

本文详细介绍了如何使用Python实现iSLIP算法,模拟交换机优先级匹配过程。通过核心的指针滑动逻辑和迭代循环策略,构建了一个完整的iSLIP算法模拟器,并加入可视化模块以直观展示匹配过程。文章还提供了完整的代码框架和性能优化建议,适合网络工程师和Python开发者直接集成到测试环境中。

weixin_29313239的博客 253

基于zxing生成二维码

java基于zxing生成二维码

one_hwx的博客 5573

周立功CAN盒二次开发实录:用QT5.1.0解析汽车CAN报文(附数据可视化技巧)

本文详细介绍了基于QT5.1.0和周立功USBCAN-E-U设备进行汽车CAN总线二次开发的实战过程。核心内容包括利用CANdb++数据库解析原始报文并转换为物理值,以及通过QCustomPlot库实现高性能实时数据可视化,为车载诊断与车联网开发提供了一套完整的工程实践方案。

sugar的博客 1058

ZXing生成二维码

AndroidZxing框架生成二维码+扫码功能;ZXing是一个开源的类库,是用Java编写的多格式的1D / 2D条码图像处理库,使用ZXing可以生成、识别QR Code(二维码)。

2301_78137387的博客 964

深入解析DMR协议中的4-CPFSK调制技术与实现

本文深入解析了DMR协议中采用的4-CPFSK调制技术。该技术凭借其连续相位、恒包络的特性,在有限的12.5kHz信道带宽内实现了稳健的通信,有效对抗干扰并提升功放效率,是DMR数字对讲机清晰、稳定通信的核心保障。文章详细阐述了其原理、实现细节及在协议栈中的协同作用。

weixin_29306875的博客 232

从PCIe 3.0到6.0:为什么“阻抗一致性”比“绝对值”更重要?聊聊连接器与板材的选型影响

本文探讨了PCIe从3.0到6.0演进过程中,阻抗一致性相比绝对值的重要性,分析了连接器与板材选型对高速信号完整性的影响。随着速率提升至64GT/s,系统级阻抗控制和验证成为关键,文章提供了选型指南、验证方法论及工程实践建议,帮助工程师应对高速设计挑战。

weixin_42556197的博客 385

ZXing开源库生成二维码

ZXing作为一款功能丰富的二维码处理库,为开发者提供了灵活而强大的工具。

奇遇少年 3058

高斯-约当(Gauss-Jordan)消元法——c++代码实现

具体算法的详细原理请参照此篇博客:高斯-约当(Gauss-Jordan)消元法下面是具体c++代码,不保证程序最优化,提供一个可行的程序,供大家改进,同时感谢大家提意见。——大神勿喷呀,我是一个小菜鸟~void Guss_Jordan(int n,double *a)//阶数n 系数矩阵a { double*a_temp = new double[n*n * 2];//a与单位矩阵的组合

zwz的学习之路 6875

关于Java生成二维码(zxing)

使用zxing生成二维码

酶泽的博客 3031

饥饿游戏搜索算法(HGS)详解:从生物激励到智能优化

饥饿游戏搜索算法(HGS)是一种受动物饥饿驱动觅食行为启发的智能优化算法。该算法通过模拟生物饥饿程度与觅食策略的关系,将个体适应度映射为饥饿感,并据此动态调整搜索行为。HGS的核心机制包括:1) 饥饿权重计算(W1/W2),2) 三种位置更新策略(随机探索、正向/负向协作),3) 自适应平衡参数E。算法通过迭代优化逐步改进解的质量,具有参数自适应、全局搜索能力强等特点,在复杂优化问题中表现出色。相比传统优化方法,HGS更注重个体内部状态对搜索行为的影响,实现了探索与开发的自然平衡。

qq_42212808的博客 155

【Claude】组织级认证限制报错已解决(4 种)

报错被禁用的是什么谁能解除应急方案整个 Console 组织Anthropic 支持换账户 / 订阅凭证API key 认证方式你的组织管理员用订阅/login订阅 OAuth 登录你的组织管理员用 API keyRoutines 功能你的组织所有者手动计划任务替代共同排查模式/status确认当前凭证;检查环境变量;看清报错消息里命名的是什么(key?组织访问?),对症清除;管理员层面的限制,找管理员解锁。

博客 1万+

Android之zxing二维码生成与识别

二维码: 是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的; 在代码编制上巧妙的利用构成计算机内部逻辑基础的0和1比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图像输入设备或光电扫描设备自动识读以实现信息自动处理; 二维码能够在横向和纵向两个方位同时表达信息,因此能在很小的面积内表达大量的信息; 二维码相对于条形码的优势就...

bear_huangzhen的专栏 5万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

java使用zxing生成和解析二维码

什么是zxing? ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。Zxing可以实现使用手机的内置的摄像头完成条形码的扫描及解码。 导入maven依赖 注意:jdk不能低于8 <!-- 导入zxing的依赖 --> <dependency> <groupId>...

gy 1539

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Java利用Zxing生成二维码及解析二维码内容

前言 Java 操作二维码的开源项目很多,如 SwetakeQRCode、BarCode4j、Zxing 等等 本篇文章是介绍利用Zxing来生成二维码图片在web网页上展示,同时解析二维码图片。 Zxing概述 ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。 Zxing库的主要部分支持以下几个功能:核心代码的使用、适用于J2SE客户端的版本、适用于Android客户端的版本(即BarcodeScanner)、Android的集成(通

weixin_43407520的博客 5682

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

【zxing生成二维码及解析二维码】

导入依赖 <!-- https://mvnrepository.com/artifact/com.google.zxing/core --> <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.0</v

weixin_52394256的博客 2740

Android利用zxing生成二维码

感谢大佬:https://blog.youkuaiyun.com/mountain_hua/article/details/80646089 **gayhub上的zxing可用于生成二维码,识别二维码 gayhub地址:https://github.com/zxing/zxing 此文只是简易教程,文末附有完整代码和demo下载地址,进入正题: (1)下载并导入zxing.jar包 下载: zxing.jar...

Jason的学习笔记 2495

Zxing二维码生成和扫描

Zxing二维码生成和扫描 step1: D:\workspace\ZxingDemo\app\build.gradle implementation 'com.journeyapps:zxing-android-embedded:4.2.0' implementation 'com.google.code.gson:gson:2.8.0' step2: D:\workspace\ZxingDemo\app\src\main\AndroidManifest.xml <uses

cf8833的博客 3456

使用zxing生成二维码

很早就听说了zxing的大名了,一直没有机会使用,正好目前项目有了生成二维码的需求。就来试试吧。 一、先到Github上把项目下载下来把。 https://github.com/zxing/zxing 项目目录如下: 二、AndroidStudiodao导入上图android项目。 1、导入Android项目后,编译运行会发现丢失很多文件。 2、将上图中core、android-core。目录文...

正义 927

使用ZXing扫描和生成二维码

ZXing是一个可以生成和解析多种格式的1D/2D条形码的开源类库,采用Java实现。Android和JavaSE可以集成使用。 示例运行效果如下: 网上流传的关于ZXing的代码库很多,但几乎都是很老的版本了。而ZXing一直在更新和优化,当前最新版本已经到3.2.1,我们可以在github上下载到最新的代码库。 ZXing项目地址: https://github.com

ruancoder的博客 2641

zxing和QRCode 生成解析二维码

zxing和QRCode都是用来生成和解析二维码的工具 QRCode:是有日本Demso公司于1994年研制的一种矩阵二维码符号码 zxing:老美的(个人更喜欢这个) 桌面或Web应用建议采用QRCode,Android应用建议采用zxing 不说废话,直接来 1.QRCode 引入maven (我引入了依赖后没办法在线下载这个包,只好自己去下载jar包后,放到本地maven库,然后...

weixin_42132143的博客 3210

Android 使用Zxing实现二维码的生成,扫描

在项目中要使用到二维码的相关内容,百度(原谅我还在用)之后得知一半都是使用Google的开源库 Zxing,但是网上多半的使用教程都是比较早的,这里给出我总结的一些基础代码和使用规则:首先要一定要先去官网看看:github-Zxing官方库的地址 github-zxing-android-embedded 一个非常好用的android工具1. 如何导入如果是使用android studio, 那么

薛昭君的博客 4万+
上一篇: zuul网关Filter处理流程及异常处理
下一篇: rocketmq如何保证顺序消费
yonhu123java
博客等级 码龄14年 6粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值