欢迎来到天天文库
浏览记录
ID:38157869
大小:21.68 KB
页数:10页
时间:2019-06-06
《java——基于zxing的二维码生成器》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、java——基于zxing的二维码生成器 随着扫一扫的流行,二维码也开始变得非常的火热,本篇文章就用最近比较流行的zxing来做一个属于自己的二维码生成器。当然这个这个比较简单,抛砖引玉。如果大家还希望看二维码细节,请参考陈皓大神的这篇文章 二维码的生成细节和原理 java二维码生成 一.资源需求 1下载zxing工程 github地址zxing项目github 2下载之后将code生成jar包然后导入到我们自己的工程中去。(这一步不是很清楚,等待之后弄明白) 这里提供一下已经生成好的j
2、ar包。zxingjar包百度云分享如果分享被取消可以在文章下面评论或者是通过简信联系我。 3通过通过google测试的matrixToImageWriter进行辅助开发。 4进行各种编辑。 二代码开发。 判断代码的好坏之一就是耦合性低,所以我对代码进行了一定的封装,如果大家仅仅是为了不求甚解的话,可以直接使用下面的代码。 1引入jar包。自行百度。 2代码编写 matrixToImageWriter类importjava.awt.image.BufferedImage;importjav
3、a.io.File;importjava.io.IOException;importjava.io.OutputStream;importjavax.imageio.ImageIO;importcom.google.zxing.common.BitMatrix;/*二维码的生成需要借助MatrixToImageWriter类,该类是由Google提供的,可以将该类直接拷贝到源码中使用,当然你也可以自己写个生产条形码的基类*/publicclassMatrixToImageWriter{privatest
4、aticfinalintBLACK=0xFF000000;//用于设置图案的颜色privatestaticfinalintWHITE=0xFFFFFFFF;//用于背景色privateMatrixToImageWriter(){}publicstaticBufferedImagetoBufferedImage(BitMatrixmatrix){intwidth=matrix.getWidth();intheight=matrix.getHeight();BufferedImageimage=newBuf
5、feredImage(width,height,BufferedImage.TYPE_INT_RGB);for(intx=0;x6、icvoidwriteToFile(BitMatrixmatrix,Stringformat,Filefile,StringlogUri)throwsIOException{System.out.println("writetofile");BufferedImageimage=toBufferedImage(matrix);//设置logo图标QRCodeFactorylogoConfig=newQRCodeFactory();image=logoConfig.setMatrixLogo(image,7、logUri);if(!ImageIO.write(image,format,file)){System.out.println("生成图片失败");thrownewIOException("Couldnotwriteanimageofformat"+format+"to"+file);}else{System.out.println("图片生成成功!");}}publicstaticvoidwriteToStream(BitMatrixmatrix,Stringformat,OutputStreams8、tream,StringlogUri)throwsIOException{BufferedImageimage=toBufferedImage(matrix);//设置logo图标QRCodeFactorylogoConfig=newQRCodeFactory();image=logoConfig.setMatrixLogo(image,logUri);if(!ImageIO.write(image,format,stream)){thro
6、icvoidwriteToFile(BitMatrixmatrix,Stringformat,Filefile,StringlogUri)throwsIOException{System.out.println("writetofile");BufferedImageimage=toBufferedImage(matrix);//设置logo图标QRCodeFactorylogoConfig=newQRCodeFactory();image=logoConfig.setMatrixLogo(image,
7、logUri);if(!ImageIO.write(image,format,file)){System.out.println("生成图片失败");thrownewIOException("Couldnotwriteanimageofformat"+format+"to"+file);}else{System.out.println("图片生成成功!");}}publicstaticvoidwriteToStream(BitMatrixmatrix,Stringformat,OutputStreams
8、tream,StringlogUri)throwsIOException{BufferedImageimage=toBufferedImage(matrix);//设置logo图标QRCodeFactorylogoConfig=newQRCodeFactory();image=logoConfig.setMatrixLogo(image,logUri);if(!ImageIO.write(image,format,stream)){thro
此文档下载收益归作者所有