生成和识别图片二维码
2018-03-22 10:39
190 查看
1、引入pom文件
* 生成二维码
*/
public class CreateQrCode {
public static void main(String[] args) {
int width = 300;
int height = 300;
String format = "png";
String content = "www.baidu.com";
//定义二维码的参数
HashMap map = new HashMap();
//设置编码
map.put(EncodeHintType.CHARACTER_SET, "utf-8");
//设置纠错等级
map.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
map.put(EncodeHintType.MARGIN, 2);
try {
//生成二维码
BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height);
Path file = new File("E:/pic/test.png").toPath();
MatrixToImageWriter.writeToPath(bitMatrix, format, file);
} catch (WriterException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
2、页面
<!-- zxing --> <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.2.1</version> </dependency> <dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.2.1</version> </dependency>2、生成和读取二维码/**
* 生成二维码
*/
public class CreateQrCode {
public static void main(String[] args) {
int width = 300;
int height = 300;
String format = "png";
String content = "www.baidu.com";
//定义二维码的参数
HashMap map = new HashMap();
//设置编码
map.put(EncodeHintType.CHARACTER_SET, "utf-8");
//设置纠错等级
map.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
map.put(EncodeHintType.MARGIN, 2);
try {
//生成二维码
BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height);
Path file = new File("E:/pic/test.png").toPath();
MatrixToImageWriter.writeToPath(bitMatrix, format, file);
} catch (WriterException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/** * 读取二维码 */ public class ReadQrCode { public static void main(String[] args) { try { MultiFormatReader multiFormatReader = new MultiFormatReader(); File file = new File("E:/pic/test.png"); BufferedImage image = ImageIO.read(file); //定义二维码参数 Map hints = new HashMap(); hints.put(EncodeHintType.CHARACTER_SET,"utf-8"); //获取读取二维码结果 BinaryBitmap binaryBitmap = new BinaryBitmap(new HybridBinarizer(new BufferedImageLuminanceSource(image))); Result result = multiFormatReader.decode(binaryBitmap, hints); System.out.println("读取二维码: " + result.toString()); System.out.println("二维码格式: " + result.getBarcodeFormat()); System.out.println("二维码内容: " + result.getText()); } catch (NotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
jquery.qrcode.js
1、引入jquery.min.js、jquery.qrcode.min.js2、页面
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>二维码</title> <% String path = request.getContextPath(); String bathPath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort(); pageContext.setAttribute("path", path); pageContext.setAttribute("bathPath", bathPath); %> <script type="text/javascript" src="${path }/js/jquery.min.js"></script> <script type="text/javascript" src="${path }/js/jquery.qrcode.min.js"></script> </head> <body> 生成的二维码: <br/> <div id="qrcode"></div> <script type="text/javascript"> $('#qrcode').qrcode("www.shuai.cn"); </script> </body> </html>
相关文章推荐
- 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo 二维码、支持微博微信 QQ 二维码扫描样式
- iOS生成二维码(中间包含图片),长按识别二维码(Swift)
- 二维码生成、扫描、图片识别(Zxing)
- QRCode 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo 二维码、支持微博微信 QQ 二维码扫描样式
- Android开源库之使用ZXing开源库生成二维码及识别本地二维码图片
- 用canvas将qrcode生成的二维码与背景图片合成可以一起发送识别
- 文件流转换工具、二维码生成工具、pdf转图片流
- java生成二维码图片
- Android生成带LOGO图片二维码的方法
- QrenCode : 命令行下生成二维码图片
- 二维码的扫描、识别与生成
- php+二维码图片生成封装成对象类
- IOS SDK图片二维码识别
- cocoscreator实现微信内置浏览器点击图片识别图中二维码
- 利用jq生成二维码图片
- 详细易懂的二维码的扫描、识别与生成②
- Java使用谷歌的zxing生成二维码Qrcode并解析提取二维码图片内容
- java zxing 生成带图片的二维码
- Android平台利用ZXING生成二维码图片
- .NET C#利用ZXing生成、识别二维码/条形码