- 浏览: 276606 次
- 性别:
- 来自: 长春
文章分类
最新评论
-
378433707:
解决了我的问题!
struts2.3中StrutsPrepareAndExecuteFilter影响文件上传 -
woadaia:
jar 要哪些子啊,能不能直接发我一份,qq 39430532 ...
java调用打印机 -
ray198471:
...
jusb.jar -
liuhonggang123:
比较好
java 二维码 -
814687491:
这个JAR包分享得不得!加油!
java 二维码
使用QRCode.jar进行二维码的生成与解码;
本文非原创,参考网上找来的资料;
package com.wxthtf.iot.common;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import org.apache.log4j.Logger;
import com.swetake.util.Qrcode;
import java.io.*;
import jp.sourceforge.qrcode.QRCodeDecoder;
import jp.sourceforge.qrcode.data.QRCodeImage;
/**
* <li>Title: TwoDivCodeGenerator.java</li>
* <li>Project: AnyIOT</li>
* <li>Package: com.wxthtf.test</li>
* <li>Description: </li>
* <li>Copyright: Copyright (c) 2012</li>
* <li>Company: wxthtf Technologies </li>
* <li>Created on Feb 10, 2012 8:41:06 AM</li>
*
* @author chun_chang
* @version 1.0.0.0
*
*/
public class TwoDivCodeGenerator{
private static String code = "UTF-8";
private static final Logger log = Logger.getLogger(TwoDivCodeGenerator.class);
/**
* 描述:imgGenerate
* @param srcStr
* @param imgName 全文件名,如C:\\aaa.png
* @param widths
* @param heights
* @return
* @CreateOn Feb 10, 2012 9:37:56 AM
* @author chun_chang
*/
public static boolean imgGenerate(String srcStr, String imgName) {
try {
Qrcode qrcode = new Qrcode();
qrcode.setQrcodeErrorCorrect('H');//LMQH
qrcode.setQrcodeEncodeMode('B');
qrcode.setQrcodeVersion(0);//0-15
byte[] d = srcStr.getBytes(code);
boolean[][] b = qrcode.calQrcode(d);
int widths = b.length * 3 + 4;
int heights = b.length * 3 + 4;
BufferedImage bi = new BufferedImage(widths, heights, BufferedImage.TYPE_INT_RGB);
Graphics2D g = bi.createGraphics();
g.setBackground(Color.WHITE);
g.setColor(Color.BLACK);
g.clearRect(0, 0, widths, heights);
if(d.length > 0 && d.length < 1000) {
for(int i = 0; i < b.length; i++) {
for(int j = 0; j < b.length; j++) {
if(b[j][i]) {
g.fillRect(j * 3 + 2, i * 3 + 2, 3, 3);
}
}
}
} else {
log.error("二维码字符串过长");
}
g.dispose();
bi.flush();
String imgType = imgName.substring(imgName.lastIndexOf('.') + 1, imgName.length());
File f = new File(imgName);
ImageIO.write(bi, imgType, f);
return true;
} catch(Exception e) {
log.error(e, e);
return false;
}
}
public static String decoderImg(String fileName) {
QRCodeDecoder decoder = new QRCodeDecoder();
File imageFile = new File(fileName);
BufferedImage image = null;
String str = "";
try {
image = ImageIO.read(imageFile);
str = new String(decoder.decode(new J2SEImage(image)), code);
} catch(Exception e) {
e.printStackTrace();
}
return str;
}
public static void main(String[] args) throws Exception {
String testString = "清华同方";
String fileName = "C:\\123.png";
TwoDivCodeGenerator.imgGenerate(testString, fileName);
String str = TwoDivCodeGenerator.decoderImg(fileName);
System.out.println(str);
}
}
class J2SEImage implements QRCodeImage{
BufferedImage image;
public J2SEImage(BufferedImage image){
this.image = image;
}
public int getWidth() {
return image.getWidth();
}
public int getHeight() {
return image.getHeight();
}
public int getPixel(int x, int y) {
return image.getRGB(x, y);
}
}
- QRCode.jar (1 MB)
- 下载次数: 563
- TwoDivCodeGenerator.rar (1.4 KB)
- 下载次数: 277
发表评论
-
RSA加密解密签名验签代码(sun、BC)
2018-06-21 10:35 1352自用RSA加解密算法 -
HTTPClient 4.3.X
2018-05-08 17:08 467自用代码 -
Errors running builder 'DeploymentBuilder' on project '项目名'.
2017-12-27 09:21 543错误: Errors occurred durin ... -
图片水印
2017-11-13 19:21 431 -
SAML2发送断言
2017-10-24 15:04 796已经认证的用户,直接向应用发送断言 pack ... -
下载jar包
2017-10-20 10:35 351http://www.manyjar.com/ ... -
bat删除文件夹、删除文件夹下文件
2017-08-16 15:14 811rd 删除文件夹 del 删除文件夹下的所有文件 ... -
ActiveMQ
2017-03-17 15:14 228转:http://blog.csdn.net/jwds ... -
http方式访问wsdl
2017-01-10 10:28 801先将wsdl用SOAPUI取出xml,后拼装xml串, ... -
quartz 时间配置
2017-01-04 09:14 730纯自用 序号 说明 ... -
WAS支持RSA公钥解密
2016-12-21 15:36 1080需要将 -Dcom.ibm.crypto.provider ... -
页面禁止 iframe嵌套
2016-11-22 16:32 1173jsp: <meta http-equiv= ... -
xls添加MD5函数
2016-04-01 09:25 2382md5的宏在xls各个版本安装方法不同,请自行百度吧 ... -
easyui ajax表单上传 springMVC
2016-03-29 16:09 19591.页面 <form id="fo ... -
webservice获取客户端ip
2016-01-26 14:48 1283自用: import javax.xml.ws ... -
spring security oauth2 单点登录
2016-01-07 10:33 6717本人自己 研究及 ... -
页面跳转
2015-12-31 11:05 5441.不带request信息的 response.se ... -
pdm生成word
2015-10-27 11:34 803请下载该模板。 1.打开pdm,找到菜单report,点击 ... -
jdk 发布 webservice
2015-07-13 17:01 508本文为原创: 1.web.xml:配置ws发 ... -
css body div 图片背景
2015-06-02 00:01 805style=" background: u ...
相关推荐
java 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jarjava 二维码相关Jar...
Java二维码生成工具
java 二维码生成器; 在使用二维码生成器时,系统默认会将生成的二维码图片放在D盘。
java二维码编码解码测试 java QRCoder 二维码 编码 解码 java QRCoder 二维码 编码 解码
该资源为java生成二维码,可调整二维码大小,排版,密度,设置图片头像
Java二维码工具jar包
java二维码工具类,中间带LOGO的,很强大
利用Google ZXing 实现Java 二维码生成、解析。
QRCodeUtils使用文档详见博客https://blog.csdn.net/qq_24091555/article/details/81263472
java二维码制作jar包
很好用的二维码生成工具类,共享一起用(前后台都有得例子)
java二维码生成与解析代码实现
java生成二维码jar包,好用快捷方便易用,百度很多教学
java二维码生成
java二维码生成Demo
java 二维码生成java 二维码生成java 二维码生成java 二维码生成java 二维码生成
生成java二维码的核心类,测试类,以及servlet生成页面二维码测试。
java 二维码生产 demo 。包含 QRCode.jar ,下载后直接运行Test.jar就可以生产二维码了。
java生成二维码demo导入直接可以运行生成