生成二维码嵌入图片中 (zxing)

使用zxing生成彩色或带图片的二维码 一、zxing api的pom依赖 com.google.zxing core 3.3.0 com.google.zxing javase 3.3.0 二、生成普通的二维码 package com.mengfei.util; import com.google. 阅读详情

h5原生. 自己写了个工具类:

package com.comtop.msp.cas.server.utils;

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.util.HashMap;
import java.util.Map;

import javax.imageio.ImageIO;

import com.comtop.msp.open.qiniu.UploadUtils;
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;

public class ImgUtil {
	
	private static final String TEMP = "/temp";

	public static String mergeImg(String tempPath,String requestPath,String userId) {
		String codeUrl = null;
		int width = 100;
		int height = 100;
		Map<EncodeHintType, Object> hints = new HashMap<EncodeHintType, Object>();
		String mergePath = tempPath + File.separator + TEMP + "/merge.png";
		// 内容所使用编码
		hints.put(EncodeHintType.MARGIN, 0);
		hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
		// 生成二维码
		BitMatrix bitMatrix;
		try {
			bitMatrix = new MultiFormatWriter().encode(requestPath+"/userShare/register/goRegister/"+userId, BarcodeFormat.QR_CODE, width, height, hints);
			File fileDir = new File(tempPath + TEMP);
			if (!fileDir.exists()) {
				fileDir.mkdir();
			}
			File file = new File(tempPath + File.separator + TEMP + "/qrcode.png");
			file.createNewFile();
			MatrixToImageWriter.writeToFile(bitMatrix, "PNG", file);
			
			bitMatrix.clear();
			InputStream imagein = new FileInputStream(tempPath + "/WEB-INF/classes/include/image/a.png");
			InputStream imagein2 = new FileInputStream(file);

			BufferedImage image = ImageIO.read(imagein);
			BufferedImage image2 = ImageIO.read(imagein2);

 			Graphics g = image.getGraphics();

			g.drawImage(image2, 210, 435, 100, 100, null);

			OutputStream outImage = new FileOutputStream(mergePath);
			ImageIO.write(image, "PNG", outImage);
			codeUrl = UploadUtils.upload(toByteArray2(mergePath));
			imagein.close();
			imagein2.close();
			image.flush();
			image2.flush();
			outImage.close();
			File delFile = new File(mergePath);
			delFile.delete();
			file.delete();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return codeUrl;
	}
	
	public static byte[] toByteArray2(String filename) throws IOException {  
		  
        File f = new File(filename);  
        if (!f.exists()) {  
            throw new FileNotFoundException(filename);  
        }  
  
        FileChannel channel = null;  
        FileInputStream fs = null;  
        try {  
            fs = new FileInputStream(f);  
            channel = fs.getChannel();  
            ByteBuffer byteBuffer = ByteBuffer.allocate((int) channel.size());  
            while ((channel.read(byteBuffer)) > 0) {  
                // do nothing  
                // System.out.println("reading");  
            }  
            return byteBuffer.array();  
        } catch (IOException e) {  
            e.printStackTrace();  
            throw e;  
        } finally {  
            try {  
                channel.close();  
            } catch (IOException e) {  
                e.printStackTrace();  
            }  
            try {  
                fs.close();  
            } catch (IOException e) {  
                e.printStackTrace();  
            }  
        }  
    }  
}


Java实现二维码生成与图片嵌入指南 二维码(Quick Response Code),简称QR Code,是一种可以快速读取、存储和传播信息的矩阵式条码符号系统。它的出现极大地方便了信息的数字化传输,广泛应用于从移动支付到自动识别等多个领域。Java作为一门功能强大的编程语言,在处理二维码生成方面有着众多的开源库可供选择。这些库各有特色,能够满足不同的业务场景和开发需求。本章将详细介绍几个流行的Java二维码生成库,包括它们的功能特性、优势与不足,以及在实际应用中如何根据需求选择最合适的库。 阅读详情

相关推荐

google zxing读取、生成一维码、二维码图片

google zxing读取、生成一维码、二维码图片 google zxing java 一维码 条形码 二维码 生成 读取

Zxing 二维码生成器内嵌图片

最近的项目中需要生成二维码,找了几个例子综合下,做出了最后的效果,二维码可以生成图片格式(jpg等)或者在web页面上显示,此片文章仅作记录,雷同之处多多,包涵。。。。注:需要Zxing包装的工具类,大概的流程是读取内嵌的图片,将内容转化成二维码,将图片内嵌到二维码中,出图。 下面是完整代码: import java.awt.BasicStroke; import java.awt.Colo

小迷糊的专栏 2926

嵌入式二维码显示方案,附源码

嵌入式二维码的显示方案,代码中用控制台模拟了lcd的显示驱动,请移植的时候自行实现lcd显示驱动。另外移植的时候需要移植config.h中的几个宏定义,自己看下就知道了。

【JAVA】使用ZXing生成嵌套图片的二维码

1.先下载zxing开发包,这里用到的只是core那个jar包  2.使用zxing开发还需要一个类,代码如下 package com.sudytech.zxing; import java.awt.Color; import java.awt.Graphics2D; import java.awt.Image; import java.awt.geom.AffineTransform;

leayefang的专栏 3861

告别裸机思维:在STM32F407上玩转LwIP,让你的设备轻松接入TCP网络

本文详细介绍了如何在STM32F407微控制器上使用LwIP协议栈实现TCP网络连接,从裸机编程到网络化的架构革命。通过事件驱动模型、内存优化配置和工业级稳定性实现,帮助开发者高效构建稳定TCP连接,适用于物联网设备联网等场景。

weixin_33725515的博客 562

Win10无外网热点搭建全指南:纯局域网通信与设备互联

热点并不是只有共享上网一种用途。在很多工程与办公场景中,我们需要的是让手机、笔记本、开发板等设备临时组成一个纯内网,完成文件传输、端口调试或局域网联机,而不需要任何外网出口。Win10笔记本在不连接互联网的状态下,借助系统移动热点或netsh承载网络,完全可以创建一个无外网热点,实现设备间二层互通。其核心在于利用SoftAP建立虚拟无线接入点,并绕开或禁用ICS的NAT转发。掌握这一技术,可在会议、出差、物联网调试等场景中快速搭建临时局域网,无需额外路由器。本文详细梳理三种实现路径、操作步骤及常见故障排查,

weixin_29230773的博客 238

如何给二维码动态插入图片

  很多用户在制作二维码时,会在二维码中嵌入Logo图片,以突显一些标志性信息。如果是批量制作的二维码,需要给每个二维码嵌入不同的图片,这种情况该如何实现呢?下面,小编就给大家演示二维码动态插入图片的操作方法。   首先打开条码标签软件,新建一个标签,根据要打印的标签纸的尺寸设置文件的大小。点击软件左侧的“二维码”按钮,在画布上绘制一个二维码。在弹出的编辑界面,将二维码的类型设置为QRCode,数据来源选择为由计数器生成。   点击图片,选择来自文件,导入一张图片。将图片放在二维码的中心位置,注意不

sqxskj的博客 1995

双目视觉入门实战:用Matlab标定相机,再到Python OpenCV完成测距的完整链路

本文详细介绍了双目视觉技术的完整实现流程,从Matlab相机标定到Python OpenCV测距的全链路实践。重点解析了Matlab与OpenCV的参数转换技巧,以及立体校正、视差计算等关键步骤的代码实现,帮助开发者快速掌握双目测距系统的搭建方法。

weixin_29166013的博客 445

jquery生成二维码怎么添加图片(两种方法)

github项目地址:https://github.com/fengliting/erweima 注意:这里实现的是第一个方法 自动生成二维码里面添加图片,有两种方法,一种是使用jquery原生的二维码插件,一种是别人有改动过的二维码插件,生成二维码的图片的时候有那么一些写的差别 第一种:使用的是原生的qrcode.js生成二维码加上图片 页面 <div class="m...

flting1017的博客 7276

联想ThinkPad声卡驱动安装避坑指南:从E470到X1 Carbon的通用解法

本文详细介绍了ThinkPad声卡驱动安装的全流程,从硬件识别到驱动获取、安装技巧及深度排错。涵盖E470到X1 Carbon等不同机型的通用解法,帮助用户解决音频驱动问题,提升使用体验。重点讲解了声音驱动的精准识别和安装策略,确保系统稳定运行。

weixin_29207439的博客 708

滑模控制理论(SMC)概述

滑模控制理论(SMC)概述一、背景二、数学理论三、高维拓展四、分析 一、背景 滑模控制理论(Sliding Mode Control, SMC)是一种建立在现代控制理论基础上的控制理论,主要数学核心为李雅普诺夫函数。 滑模控制的核心思想是建立一个滑模面,将被控系统拉取到滑模面上来,使系统沿着滑模面运动。滑模控制的一个优势是无视外部扰动和不确定参数,采用一种比较“暴力”的方式达到控制的目的。 其思想和反步法有些类似,但数学实现起来更加方便而不抽象。相比反步法,滑模控制没有复杂的数学计算,也不会出现“微分爆炸”

高能阿博特的博客 6万+

随手记一次利用开源zxing生成带嵌入logo的二维码图片

之前就在项目里面用过zxing生成二维码,最近另一个项目同样需要用到二维码,故重新在学了学利用zxing生成二维码 接下来先做准备工作了,因为我是用vs2013上开发的,故选择了.net4.5版本的zxing.dll.另外准备了一张准备嵌入的图片,代码如下: 1 using System; 2 using System.Collections; 3 using System....

weixin_30787531的博客 102

尚硅谷Redis 7学习笔记

尚硅谷Redis 7学习笔记

不更了,主打一个陪伴 2万+

zxing生成二维码带logo、zxing生成二维码带图片

package com.example.springbootdemo.tt; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing...

u013845177的博客 1035

COMSOL介电弹性体数值仿真指南:预拉伸圆形DEA的稳态变形分析(II)

本期博客是《COMSOL介电弹性体数值仿真指南》系列博客中的一期。聚焦于介电弹性体驱动器(DEA)中最为经典的预拉伸圆形DEA驱动器构型,对其在COMSOL平台中的具体建模步骤进行介绍与讨论。

忘了面孔的Batou 353

详解大模型微调数据集构建方法(持续更新)

本文详细介绍了大模型微调数据集构建方法,希望能对学习大模型的同学们有所帮助。 文章目录 1. 前言 2. 微调数据集构建方法 2.1 方法一 2.2 方法二 2.3 方法三 2.4 方法四 2.5 方法五

herosunly的博客 28万+

java生成二维码

原文:https://www.iteye.com/blog/happyqing-2292524 最常见的就是QRcode二维码 一、Zxing 1.推荐使用Zxing Google出的,大厂商,文档齐全。也可生成条形码,Android上一般也采用Zxing。 2.可生成、读取二维码,可嵌入图片(logo),支持中文 3.编写代码量很少,就可生成二维码 4.生成的二维码的位点少,好识别 5.生成的二维码,占用存储空间小,2K 所需jar包:core-2.2.jar,jdk 1.6。自2.2以后需

蓝天白云 1258

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

JAVA 使用com.google.zxing包生成二维码

公司需求对不同的产片生成不同的二位码,微信扫描二维码后跳转到对应的公众号中。 1.首先使用com.google.zxing包 <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.0.0</version> ...

weixin_31172555的博客 1万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

(二维码处理--2)二维码图片和海报背景进行合成(包含生成二维码)

maven依赖 <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.4.0</version> </dependency> 工具类: import java.awt.*.

c_molione的博客 839

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

java生成二维码的生成与解析

摘自:https://blog.youkuaiyun.com/jam_fanatic/article/details/82818857 之前在做一个小项目的时候,用到了二维码技术,我同学看到我的项目后就问我怎么做到的,我一时半会也说不清,于是就想写一篇文章简单介绍一下二维码技术,下次再有同学问到,我就直接给他看我的博客就好了,哈哈。 废话不多说,咱们开始吧,开始之前还是先给大家看看我在实际应用中的效果,如下图...

yayayu_的博客 402

java学习-zxing生成二维码矩阵的简单例子

这个例子需要使用google的开源项目zxing的核心jar包 core-3.2.0.jar 可以百度搜索下载jar文件,也可使用maven添加依赖 <dependency> <groupId>com.google.zxing</groupId> <artifactId>core&l...

zhanboring的博客 72

java生成我二维码

pom文件 <!--生成二维码--> <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.0</version> </dependency> <dependency> <groupId>com.google.

fishermanMr 287

android Zxing生成带有图片二维码

package request.http.com.httprequest.fragment.my; import android.Manifest; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.conten...

前端小白的博客 666

java 实现二维码的生成与解析

简单介绍下二维码:二维码其实就是一种编码技术,只是这种编码技术是用在图片上了,将给定的一些文字,数字转换为一张经过特定编码的图片,而解析二维码则相反,就是将一张经过编码的图片解析为数字或者文字。 创建好maven项目后,在项目的pom.xml中添加依赖: <dependency> <groupId>com.google.zxing</groupId&gt...

NetSnake_的博客 428

java实现二维码的生成与解析

之前在做一个小项目的时候,用到了二维码技术,我同学看到我的项目后就问我怎么做到的,我一时半会也说不清,于是就想写一篇文章简单介绍一下二维码技术,下次再有同学问到,我就直接给他看我的博客就好了,哈哈。 废话不多说,咱们开始吧,开始之前还是先给大家看看我在实际应用中的效果,如下图: 简单介绍下二维码:二维码其实就是一种编码技术,只是这种编码技术是用在图片上了,将给定的一些文字,数字转换为一张经...

xusanyao的博客 831
上一篇: jpa 中的一对多,多对一关系设置,可直接用findall方法查询出所需的数据,非常方便
下一篇: 根据两个位置的经纬度,来计算两地的距离(单位为KM)
Nirvana--
博客等级 码龄10年 7粉丝 31原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值