MyTestDecode
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Hashtable;
import javax.imageio.ImageIO;
import com.google.zxing.BinaryBitmap;
import com.google.zxing.DecodeHintType;
import com.google.zxing.EncodeHintType;
import com.google.zxing.LuminanceSource;
import com.google.zxing.MultiFormatReader;
import com.google.zxing.Reader;
import com.google.zxing.ReaderException;
import com.google.zxing.Result;
import com.google.zxing.client.j2se.BufferedImageLuminanceSource;
import com.google.zxing.common.HybridBinarizer;
public class MyTestDecode {
/**
* @param args
* @throws ReaderException
* @throws InterruptedException
*/
public static void main(String[] args) throws ReaderException,
InterruptedException {
Reader reader = new MultiFormatReader();
String imgPath = "D:\\QRCodeTest\\TestQRCode1.png";
File file = new File(imgPath);
BufferedImage image;
try {
image = ImageIO.read(file);
if (image == null) {
System.out.println("Could not decode image");
}
LuminanceSource source = new BufferedImageLuminanceSource(image);
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
Result result;
Hashtable hints= new Hashtable();
hints.put(DecodeHintType.CHARACTER_SET, "GBK");
result = new MultiFormatReader().decode(bitmap,hints);
String resultStr = result.getText();
System.out.println(resultStr);
} catch (IOException ioe) {
System.out.println(ioe.toString());
} catch (ReaderException re) {
System.out.println(re.toString());
}
}
}
MyTestEncode
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Hashtable;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter_ED;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.ByteMatrix;
public class MyTestEncode {
public static void main(String[] args) throws Exception {
try {
String str = "CN:男;COP:公司;ZW:职务";// 二维码内容
String path = "D:\\QRCodeTest\\TestQRCode1.png";
Hashtable hints= new Hashtable();
hints.put(EncodeHintType.CHARACTER_SET, "GBK");
ByteMatrix byteMatrix;
byteMatrix = new MultiFormatWriter_ED().encode(str,
BarcodeFormat.QR_CODE, 200, 200,hints);
File file = new File(path);
MatrixToImageWriter.writeToFile(byteMatrix, "png", file);
} catch (IOException e) {
e.printStackTrace();
} catch (WriterException e1) {
e1.printStackTrace();
}
}
}
分享到:
相关推荐
总的来说,Zxing为Android开发者提供了强大的条码处理能力,通过合理的集成和定制,可以轻松地在应用中实现编码与解码功能。不过,在实际开发过程中,还需要考虑到用户界面的友好性、扫描速度以及错误处理等方面,以...
总的来说,通过STM32F417和ZXing库实现二维码解码,不仅需要深入理解微控制器的硬件特性和软件开发,还要具备图像处理和嵌入式编程的知识。这是一个综合性的项目,既锻炼了开发者的技术能力,也为实际应用提供了便捷...
`core`模块提供了基本的解码功能,而`zxing-android-embedded`则是一个Android优化的版本,包含了用户界面和相机处理,使得在Android应用中集成扫码更加便捷。 在实际使用中,ZXing库通常会结合一个扫描活动...
这个项目经过了精简,去除了不必要的复杂性和无用代码,使得开发者能够更容易理解和使用ZXing的功能。 在`ZXingDemo`中,主要包含了以下两个核心功能: 1. **二维码扫描**:这是应用的主要功能之一,允许用户通过...
在C#程序中生成和读取二维码主要有ThoughtWorks.QRCode和Zxing两种解决方案...使用ThoughtWorks.QRCode进行编码,使用Zxing进行解码。并对二维码的适用范围进行了扩展,可完成字符串、byte[]数据与二维码图像之间的转换
通过上述步骤,我们可以清晰地理解如何使用ZXing库进行条形码的编码和解码。无论是生成条形码还是从图片中读取信息,ZXing都提供了简单易用的API,使得开发过程变得十分便捷。希望本文对你理解和使用ZXing有所帮助。
本教程将详细介绍如何利用ZXing库创建一个简单的二维码解码和生成应用。 首先,我们需要了解ZXing库的核心组件。`core.jar`是ZXing的核心库,包含了条码和二维码的解码功能。它提供了多种编码格式的解码器,如QR码...
如何使用zxing包设计RQ码的编码和解码。 编码:先使用Hashtable设置使用的文字编码,然后建立BitMatrix,再把BitMatrix写入图片即可。 解码:和编码相似,先设置文字编码,然后把文件读入BinaryBitmap,再利用...
8. **错误处理**:在使用ZXing库进行解码或编码时,可能会遇到各种错误,如图像质量差、格式不支持等。因此,需要了解如何捕获和处理这些异常,以确保程序的健壮性。 9. **图像处理**:ZXing库通常需要输入图像数据...
这个项目是针对C#编程语言的一个版本,即ZXing.NET,它为开发者提供了方便快捷的接口来识别和生成这两种编码。 **ZXing.NET库介绍** ZXing.NET是由Christian Schormann开发的,它是ZXing(Java版本)的C#移植,支持...
ZXing库提供了多种条码和二维码格式的编码和解码支持,包括但不限于QR Code、Data Matrix、UPC-A、EAN-13等。ZXing.dll是ZXing.Net项目的.NET实现,它为开发者提供了简单易用的API,方便在C#或VB.NET项目中集成...
在Java中实现二维码的编码和解码,我们可以利用开源库ZXing(Zebra Crossing)来完成。ZXing是一个多功能的条码和二维码处理库,支持多种编码格式的读写。 首先,我们来详细了解二维码编码的过程。编码是将数据转换...
ZXing.NET,全称为“Zebra Crossing for .NET”,是一个基于C#的开源库,用于读取和写入多种一维和二维条码,包括二维码(QR Code)和常见的条形码格式,如EAN、UPC、Code 128等。这个库是ZXing(Java版本)的.NET...
ZXing,全称为“Zebra Crossing”,是一款由Google开源的二维码和一维码编解码库,支持多种格式,如QR码、Data Matrix、Aztec、UPC和EAN等。这个项目的主要目的是提供一种跨平台的方式来读取和写入各种条形码和...
在“使用ZXing加密解析二维码”这一主题中,我们将深入探讨如何利用ZXing库实现二维码的加密和解码过程。首先,我们需要理解二维码的基本结构。二维码是一种二维条形码,可以存储更多的数据,包括文本、网址、联系...
3. **解码速度快**:Zxing使用高效的算法,使得二维码和条形码的识别速度非常快。 4. **自定义集成**:开发者可以轻松地将Zxing集成到自己的应用中,提供定制化的扫描和编码功能。 三、Zxing的加码过程 在“Zxing ...
在IT领域,二维码和PDF417条形码是数据编码和交换的常用工具,尤其在移动设备和物联网应用中...同时,也可以通过这个源代码学习如何与.NET框架集成,以及如何处理字符编码问题,这对深入理解和使用ZXing库非常有帮助。
在这个文件中,MATLAB会读取一个图像文件,通常是包含二维码的图像,然后使用ZXing的解码器进行识别: 1. **读取图像**:使用MATLAB的`imread`函数读取图像文件,将其转换为适当的格式供ZXing处理。 2. **识别...
在Java环境下,ZXing(Zebra Crossing)库是一个强大的开源工具,它提供了生成和解码二维码的功能。下面将详细介绍如何使用ZXing库在Java中生成二维码,并将其结果显示在JSP页面上。 首先,我们需要了解ZXing库的...