qrcode二维码学习笔记之一
来源:互联网 发布:淘宝浏览单平台app 编辑:程序博客网 时间:2024/06/05 10:32
源地址:http://kantaotao.blog.163.com/blog/static/9468786200972433951873/
最近在看qrcode二维码的资料,整理了一些心得与大家分享一下。
在网络上找了些资料都是qrcode生成和解码都是分开的包,而且有些需要注册、有些生成的内容有所限制,所以我重新打了一个包,本着我为人人,人人为我的精神,分享出来!
/**
* qrcode解码
* @param filename 文件路径
* @return 解码内容
*/
public static String deCode(String filename) {
BufferedImage sourceImage;
String decodedString = null;
try {
sourceImage = ImageIO.read(new File(filename));
DeQRCode code = new DeQRCode();
byte[] decodedBytes = code.decode(new J2EEImage(sourceImage));
decodedString = new String(decodedBytes);
} catch (Exception e) {
e.printStackTrace();
}
decodedString = ContentConverter.convert(decodedString);
System.out.println("解码内容:");
System.out.println(decodedString);
return decodedString;
}
/**
* qrcode生成
* @param value 内容(不限长度,我在测试70个汉字时候都是正常的)
* @param filepath 存放路径
* @param pointSize 图片矩形像素大小
* @return
*/
public static boolean enCode(String value,String filepath,int pointSize) {
boolean flag = true;
try {
int width ;
int height = width = value.length() % 8 != 0 ? ((value.length() / 8 -1 )* 10 ) + 15 + (20*pointSize) : ((value.length() / 8 -1 )* 10 ) + 5 + (20*pointSize);
EnQRCode code = new EnQRCode();
code.setBounds(new Rectangle(0, 0, width, height));
code.setCode(value);
code.setPointSize(pointSize);
code.setEncoding(code.ENC_BYTE);
code.setFnc1Mode(EnQRCode.FNC1_MODE_NO);
code.setErrorCorrectionLevel(EnQRCode.CORRECTION_LEVEL_L);
ImageEncoder encode = new ImageEncoder(code,filepath);
flag = encode.drawImage();
System.out.println("图片生成完毕");
} catch (Exception ex) {
ex.printStackTrace();
flag = false;
}
return flag;
}
测试数据
enCode("姓名:张三/r性别:男/r民族:汉族/r服务编号:10120091019001/r账户余额:10002元","c://1.jpg",2);
enCode("sid=1001 name=ceshi value=100102112","c://4.jpg",2);
enCode("二维图片测试","c://5.jpg",2);
- qrcode二维码学习笔记之一
- Java-QRCode生成二维码学习笔记
- Java-QRCode解析二维码学习笔记
- 【笔记】Qrcode、zxing制作二维码
- Java-QRCode生成二维码学习
- QRCode二维码之一——C++环境二维码的生成
- C#QRCode二维码生成的使用笔记
- 二维码QRCode
- QrCode二维码
- 学习:二维码、QR码、J4L-QRCode、java
- [Python模块学习]用qrcode模块生成二维码
- QRcode php生成二维码
- 二维码(QRCODE)数据格式
- qrcode二维码生成/解析
- query-qrcode生成二维码
- 使用QRCode生成二维码
- jquery.qrcode生成二维码
- 利用QRCode生成二维码
- 重庆邮电大学2011年计算机考研——《计算机网络》课程考试考前答疑报名通知
- 3 Don't let this get you down 不要為此灰心喪氣
- 微软MSN和新浪整合什么?
- 在环境变量中查找程序集
- 使用VC2005编译真正的静态Qt程序
- qrcode二维码学习笔记之一
- 关于性能测试中一些计算方法(throughput, active user...)
- Visual Studio 2005的版本情况和新特征详细介绍
- 说明
- GridCtrl使用详解
- dwr 实现页面数据加载等待状态
- dsfdsaf
- ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等(四)--动态绘制点
- Qt 类中 用QSettings类读配置文件