java-二维码生成页面输出

摘要:
传输门和java生成的二维码是成熟兼容的。直接下载jar包。传输门的下载文件包含core-3.0.0.jar和BASE64Encoder Two-jar包。第一个由QR码使用,第二个由base64使用,无需转换。可以将Base64导入到项目中,而不使用第二个。基本用法:publicStringgeneralQRCode{Hashtablehints=newHashtable();hints.put;Stringbinary=null;try{//400400是QR码图像BitMatrixbitMatrix=newMultiFormatWriter()的宽度和高度.encode;//实现1:将图片输出到指定目录//FileoutputFile=newFile//MatrixToImageWriter。写入文件;//实现2:生成二维码图像,将图像转换为二进制并传递给前台//1.读取文件并将其转换为字节数组ByteArrayOutputStreamout=newByteArrayOutputStream();BufferedImageimage=toBufferedImage;////图像IO。写byte[]bytes=out。toByteArray();//2.将字节数组转换为二进制BASE64Encoder=newBASE64Encode();binary=encoder.encodeBuffer。trim();}捕获{e.printStackTrace();}return“data:image/png;base64,”+binary;}publicstaticBufferedImagetoBufferedImage{intwidth=matrix.getWidth();intheight=matrix.getHeight();BufferedImageimage=newBufferedImage;对于{image.setRGB(x,y,matrix.get(x,y)?

二维码现在很流行。

前端也有二维码的生成方式: jquery.qrcode

qrcode其实是通过使用jQuery实现图形渲染,支持Html5技术的才能实现,只要是canvas实现的。传输门

而java生成二维码已经很成熟了,兼容性也很好。

直接下载jar包  传输门

下载文件里有core-3.0.0.jar和BASE64Encoder.jar两个jar包

第一个是二维码使用的,第二个是base64使用的

不转换base64可以不使用第二个

导入到项目中使用就可以了。

基础使用方法:

public String generalQRCode(String url){
          Hashtable hints= new Hashtable(); 
          hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); 
          String binary = null;
          try {
        //400,400是二维码图片宽高 BitMatrix bitMatrix
= new MultiFormatWriter().encode( url, BarcodeFormat.QR_CODE, 400, 400, hints); // 实现一: 输出图片到指定目录 // File outputFile = new File("d://1.jpg"); // MatrixToImageWriter.writeToFile(bitMatrix, "png", outputFile); // 实现二:生成二维码图片并将图片转为二进制传递给前台 // 1、读取文件转换为字节数组 ByteArrayOutputStream out = new ByteArrayOutputStream(); BufferedImage image = toBufferedImage(bitMatrix); //// ImageIO.write(image, "png", out); byte[] bytes = out.toByteArray(); // 2、将字节数组转为二进制 BASE64Encoder encoder = new BASE64Encoder(); binary = encoder.encodeBuffer(bytes).trim(); } catch (Exception e) { e.printStackTrace(); } return "data:image/png;base64,"+binary; } 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) ? 0xFF000000 : 0xFFFFFFFF); } } return image; }

导包后直接复制到项目中就可以使用了。

如果是springMVC框架,直接给generalQRCode方法加注解放到Controller里就可在前端调用了。

如注解例子:

@RequestMapping("/generalQRCode.do")

@ResponseBody

免责声明:文章转载自《java-二维码生成页面输出》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ICSharpCode.SharpZipLib压缩解压WPF实现3D翻转的动画效果下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

iOS,QRCord(矩阵二维码)

1.二维码及其原理介绍 2.二维码生成 3.二维码解析 二维码及其原理介绍 二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息。一维条码的宽度记载着数据,而其长度没有记载数据。二维条码的长度、宽度均记载着数据。二维条码有一维条码没有的“定位点”和“容错机制”。容错机制在即使没有辨识...

js动态生成二维码

一、使用jquery.qrcode生成二维码 1、首先在页面中加入jquery库文件和qrcode插件 <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery.qrcode.min...

分享一个自用小功能--微信小程序二维码签到

签到打卡小程序简介 微信小程序“欢聚乐乐到”----为用户提供了一个全新的签到打卡服务模式,适用于培训、会议、旅游等活动现场签到,让我们可以轻松的进行签到打卡,摆脱繁琐的过程和长时间的等候,最快捷方便的操作进行签到打卡。 小程序特色内容: 为活动发起人提供创建、管理、组织签到打卡活动的工具,可以生成二维码便于现场扫码打卡签到,同时能让用户签到,打卡变得十...

php生成二维码

<?php // QRcode::png($value, false, $errorCorrectionLevel, $matrixPointSize); // 第二种方式 保存成一个文件,并且打印出来 include 'C:wodewenjianwampwwwphpqrcodephpqrcode.php'; $store_id = 11;$tabl...

基于QRcode创建和识别二维码的研究

至于什么是二维码,大家都使用过,其实比较形象,对比之前的条形码,就很容易理解,就是基于水平方向排列的通过小竖条的宽度不同表示不同的信息,而二维码,表达信息的方式是基于二维的黑白相间(不一定就是黑白,多数看到的可能是黑白,其实颜色是可以随着自己的需要,灵活调整的)的小方块,按照一定的规则排列的一个矩形区域内,形成一个传递信息的编码方式。 二维码(本博客重点介...

用C#实现的条形码和二维码编码解码器

本篇介绍可以在C#中使用的1D/2D编码解码器。条形码的应用已经非常普遍,几乎所有超市里面的商品上面都印有条形码;二维码也开始应用到很多场合,如火车票有二维码识别、网易的首页有二维码图标,用户只需要用手机扫描一下就可以看到手机版网易的网址,免去了输入长串字符的麻烦。 条形码的标准: 条形码的标准有ENA条形码、UPC条形码、二五条形码、交叉二五条形码、库德...