-
ackage com.wmsDemo.QRCode;
import com.google.zxing.common.BitMatrix;
import javax.imageio.ImageIO;
import java.io.File;
import java.io.OutputStream;
import java.io.IOException;
import java.awt.image.BufferedImage;
public final class MatrixToImageWriter {
private static final int BLACK = 0xFF000000;
private static final int WHITE = 0xFFFFFFFF;
private MatrixToImageWriter() {}
public static BufferedImage toBufferedImage(BitMatrix matrix) {
int width = matrix.getWidth();
int height = matrix.getHeight();
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
for (int x = 0; x < width; x++) {
for (int y = 0; y < height; y++) {
image.setRGB(x, y, matrix.get(x, y) ? BLACK : WHITE);
}
}
return image;
}
public static void writeToFile(BitMatrix matrix, String format, File file)
throws IOException {
BufferedImage image = toBufferedImage(matrix);
if (!ImageIO.write(image, format, file)) {
throw new IOException("Could not write an image of format " + format + " to " + file);
}
}
public static void writeToStream(BitMatrix matrix, String format, OutputStream stream)
throws IOException {
BufferedImage image = toBufferedImage(matrix);
if (!ImageIO.write(image, format, stream)) {
throw new IOException("Could not write an image of format " + format);
}
}
}
-
package com.wmsDemo.QRCode;
import java.io.File;
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.common.BitMatrix;
public class Test {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args){
try {
String content = "这是测试xing二维码生成";
// String path = "D:/tt";
String path = "D:/java/apache-tomcat-7.0.47/webapps/wmsDemo/QRCode";
MultiFormatWriter multiFormatWriter = new MultiFormatWriter();
Map hints = new HashMap();
//内容所使用编码
hints.put(EncodeHintType.CHARACTER_SET, "gb2312");
BitMatrix bitMatrix = multiFormatWriter.encode(content,BarcodeFormat.QR_CODE, 200, 200, hints);
//生成二维码
File outputFile = new File(path,"14.jpg");
MatrixToImageWriter.writeToFile(bitMatrix, "jpg", outputFile);
} catch (Exception e) {
e.printStackTrace();
}
}
}
- 浏览: 67808 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (79)
- 技术研究类 (61)
- 心灵鸡汤 (3)
- Struts (1)
- Spring (17)
- Hibernate (0)
- Java (47)
- Mybatis (5)
- Tomcat (4)
- Javascript (4)
- Oracle (3)
- JSP (1)
- HSQLDB (0)
- WebService (2)
- Javascript引擎 (2)
- Dubbo (3)
- Java mail (1)
- Ant (1)
- ASM技术分析 (2)
- AspectJ (0)
- 系统优化 (4)
- Redis (7)
- 二维码 (2)
- JSF (1)
- Zookeeper (3)
- jdbc (2)
- jndi (3)
- 数据跑批框架 (1)
- memcache (3)
- AD域的操作 (1)
- 优化方案 (1)
- apache (1)
- 设计模式 (0)
- J2EE (0)
最新评论
发表评论
-
Java之23种设计模式之概要介绍-01
2016-09-06 18:22 0一.设计模式概要介绍: 总体而言Java方向的设 ... -
编程方式 获取ApplicationContext实例
2016-05-16 10:46 845基于Spring的Java应用会通过Ap ... -
获取spring的ApplicationContext几种方式
2016-05-16 10:42 1303Java类获取spring 容器的bean 常用的5 ... -
apache-commons-stringutil的常用使用方法
2016-05-15 18:03 1164public static void TestStr(){ ... -
Java代码优化方案
2016-05-15 18:02 6081. 尽量在合适的场合使用单例 使用单例可以 ... -
Struts2中的ModelDriven机制及其运用
2016-05-15 17:38 894ModelDriven 所谓ModelDriven,意思是 ... -
AD域的Java开发操作
2016-05-06 15:52 1137import java.util.ArrayList; ... -
spring调用memcached client for java
2016-05-06 15:45 696转载:spring调用memcached client ... -
memcached客户端源码分析
2016-05-06 15:42 905转载:memcached客户端源码分析 ... -
跑批利器--批处理应用程序
2016-05-04 14:23 1128跑批利器--批处理应用程序 ... -
深入浅出Mybatis系列(四)---配置详解之typeAliases别名(mybatis源码篇)
2016-05-04 14:16 620深入浅出Mybatis系列(四)---配置详解之typeAl ... -
深入浅出Mybatis系列(三)---配置详解之properties与environments(mybatis源码篇)
2016-05-04 14:06 577深入浅出Mybatis系列(三)---配置详解之proper ... -
深入浅出Mybatis系列(二)---配置简介(mybatis源码篇)
2016-05-04 14:04 546深入浅出Mybatis系列(二)---配置简介(mybati ... -
深入浅出Mybatis系列(一)---Mybatis入门
2016-05-04 14:02 544深入浅出Mybatis系列(一)---Mybatis入 ... -
Oracle的分页方法
2016-05-01 00:51 4231.根据ROWID来分<!--more--> ... -
Spring的jar包详解
2016-05-01 00:36 741转载:Spring——jar包详解 or ... -
Spring 配置JNDI(连接池)
2016-04-29 15:38 6861. 找到Tomcat6.0安装目录下 ... -
Spring的JNDI数据源连接池配置示例及Spring对JNDI实现分析
2016-04-29 15:16 3140在使用 Tomcat服务器 + Sprin ... -
Spring对JNDI的支持方法
2016-04-29 15:14 1044Spring对JNDI的支持 Spring中 ... -
spring3 jdbctemplate 注解实例
2016-04-29 14:56 1867标签: javawebTimestampspring第 ...
相关推荐
在Java环境中,使用Zxing(ZXing,全称“Zebra Crossing”)库可以方便地生成和解码二维码。Zxing是一个开源项目,提供多种条码(包括一维码和二维码)的读写功能。在本文中,我们将详细介绍如何使用Zxing库来生成...
以上就是使用ZXing在Android应用中生成和扫描二维码的基本步骤,以及解决低版本设备白边问题的方法。在实际开发中,可以根据项目需求进行更复杂的定制,如添加自定义的扫描框、设置扫描动画等。同时,确保在处理用户...
压缩包中的"zxing方式生成二维码jar包"包含了ZXing库的必要组件。 - **创建BitMatrix对象**:生成二维码的第一步是构建一个BitMatrix对象,它代表了二维码的二进制数据。你可以使用`...
STM32是一款基于ARM Cortex-M内核的微控制器,由STMicroelectronics公司生产,...通过结合Zxing库和IAR Embedded Workbench,开发者可以构建一个高效、可靠的二维码读取系统,为各种应用场景提供便捷的数据输入方式。
STM32上的二维码识别可能使用开源的二维码解码库,如ZXing(Zebra Crossing)的C++版本,或者其他专为嵌入式设计的库。这些库通常具有轻量级、高效的特点,适应资源有限的MCU环境。 开发过程中,开发者需要熟悉STM...
例如,在自动化生产线中,可以实时读取产品上的二维码,追踪生产过程;在物联网设备中,可以通过DSP快速解析二维码,实现设备的快速连接和配置。 总的来说,ZXing的DSP移植不仅提高了二维码处理的速度,还降低了...
这里我们以ZXing为例,它是一个开源的条码读取和生成框架,提供了多种条码和二维码的处理能力。要使用ZXing,可以通过Maven或Gradle将其依赖添加到项目中: 对于Maven,在`pom.xml`文件中添加: ```xml ...
STM32是一款基于ARM Cortex-M内核的微控制器系列,由意法半导体(STMicroelectronics)生产。在本项目中,我们关注的是STM32F417型号,它是一款高性能、低功耗的微控制器,具有浮点单元(FPU),适用于复杂计算任务...
在本主题中,我们主要关注如何利用LabVIEW来生成二维码。二维码(Quick Response Code)是一种二维条码,能存储大量数据,如网址、文本、联系信息等,且读取速度快,应用广泛。 生成二维码在LabVIEW中通常涉及到...
类将二维码数据转化为图像,然后通过自定义矩阵的方式添加Logo。 以下是使用Zxing生成带Logo的二维码的基本步骤: 1. 创建一个`BitMatrix`对象,表示二维码的数据。 2. 使用`MultiFormatWriter`编码要生成的文本。 ...
要使用ZXing库生成二维码,首先需要将相关的jar文件添加到项目类路径中。这些jar包可能包括core、javase等模块,它们包含了处理图像、编码解码等功能的类。 以下是使用ZXing库生成二维码的基本步骤: 1. 引入ZXing...
首先,我们需要一个库来处理二维码的生成,常见的选择是Zxing(ZXing,意为“zebra crossing”,斑马线),这是一个开源的条码读取和生成项目。Zxing提供了多种语言的绑定,包括Java,因此很适合Android平台。我们...
在IT行业中,条形码和二维码的打印是一个常见的需求,特别是在物流、仓储和生产管理等领域。ZXing(又称为Zebra Crossing)是一个流行的开源条码和二维码读取与生成库,它支持多种编码格式,包括一维码和二维码。这...
然后,可以调用提供的类和方法来生成或解码二维码。例如,使用`com.google.zxing.client.j2se.MatrixToImageWriter`类可以将数据矩阵转换为图像,`com.google.zxing.qrcode.QRCodeWriter`则用于生成QR Code编码。 ...
ZXing库提供了一种简单、高效的方式来处理二维码的生成和解析。 首先,我们来看二维码的生成过程。ZXing库提供了一个名为`MultiFormatWriter`的类,它可以用于创建不同类型的条码和二维码。要生成一个二维码,你...
在.NET框架中,C#是一种常用的编程语言,...QRCoder库提供了一种简单的方式来实现这些功能,允许开发者自定义二维码的样式和性能。通过理解并实践这些知识点,你可以在自己的.NET Web应用中轻松集成二维码生成功能。
1.通过QRCode.jar包生成二维码,可设置二维码图片格式,二维码图片存放路径,二维码尺寸,二维码颜色 2.二维码扫描内容分为两种,1种为...4.提供通过QRCode.jar生成二维码的全部生产线上代码,可直接运行,含有关键注释
本篇文章将深入探讨如何使用Java来创建二维码,并结合提供的“java生产二维码实例”进行详细讲解。 首先,生成二维码的关键在于选择合适的库。Java中常用的二维码生成库有`ZXing (Zebra Crossing)`和`javapng`等。...
4. **二维码的定制**:除了基本的生成功能,Zxing库还允许你自定义二维码的颜色、边距等视觉属性,使其更好地适应你的需求。 5. **在Web应用中使用**:如果你正在开发一个网站,你可以在后端生成二维码图片,然后...
例如,使用ZXing库,可以创建一个`MultiFormatWriter`对象,选择要编码的数据和二维码格式,然后使用`encode`方法生成二维码。生成的二维码可以进一步设置颜色、边距、尺寸等视觉效果。 在实际项目中,选择使用哪个...