java-简单二维码制作
main测试方法 方法一
public static void main(String[] args) throws Exception { final int width = 300; final int height = 300; final String format = "png"; final String content = "https://www.cnblogs.com/aston/p/7501895.html"; //定义二维码的参数 HashMap hints = new HashMap(); hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); hints.put(EncodeHintType.MARGIN, 2); Path file =null; //生成二维码 try { //OutputStream stream = new OutputStreamWriter(); BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints); System.out.println(bitMatrix + " -----------------------------------------------------------------------------------------"); file = new File("F:/img.png").toPath(); MatrixToImageWriter.writeToPath(bitMatrix, format, file); //MatrixToImageWriter.writeToStream(bitMatrix, format, stream); } catch (Exception e) { } //return file; } |
实际案例 方法二
所需jar包maven地址
<dependency> <groupId>net.glxn.qrgen</groupId> <artifactId>javase</artifactId> <version>2.0</version> </dependency> |
//二维码制作方法 @Security(name = "二维码制作", asUrl = "downImage") @RequestMapping("downImage/{id}") public void play(ModelMap modelMap, @PathVariable Long id, HttpServletRequest request, HttpServletResponse response)throws Exception { Video video = videoService.findById(id); String domain = WebContext.getDomain();//获取域名 String path = domain+"/edu/manage/video/addPlay/"+id ;//视频播放地址 InputStream inputStream = img(path); OutputStream outputStream= response.getOutputStream(); response.setHeader("Content-Disposition",//此方法是在浏览器直接下在图片,给浏览器返回一个文件,如果浏览器发现是一个文件就会自动下载 "attachment; filename=" + java.net.URLEncoder.encode(video.getName()+".png", "UTF-8")); byte[] bytes=new byte[1024]; while ((inputStream.read(bytes))>0){ outputStream.write(bytes); } outputStream.flush(); outputStream.close(); } public InputStream img(String content){ final int width = 300; final int height = 300; final String format = "png"; //final String content = "https://www.cnblogs.com/aston/p/7501895.html"; //定义二维码的参数 HashMap hints = new HashMap(); hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); hints.put(EncodeHintType.MARGIN, 2); Path file =null; //生成二维码 try { //OutputStream stream = new OutputStreamWriter(); BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, width, height, hints); file = new File("F:/img.png").toPath(); MatrixToImageWriter.writeToPath(bitMatrix, format, file); return new FileInputStream(file.toFile()); } catch (Exception e) { } return null; } |
下载图片例如下所示:
获取电脑磁盘盘符
File[] roots = File.listRoots(); File root = roots[0]; //获取磁盘的第一个盘符 System.out.println(root + " root ----------------------------------------"); for (int i =0; i < roots.length; i++) { System.out.println(roots[i] + " ++++++++++++++++++++++++++++++"); } |
手机微信扫描二维码提示跳转到浏览器里面
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="renderer" content="webkit" /> <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" /> <meta name="format-detection" content="telephone=no,email=no,date=no,address=no" /> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> <meta name="keywords" content="" /> <meta name="description" content="" /> <meta name="author" content="Mr Shen,sgq625@126.com" /> <meta name="revised" content="Mr Shen,2019-03-15 10:20:30" /> <meta name="generator" content="HBuilder 9.1.29" /> <title>shiping</title> <link href="https://cdn.bootcss.com/weui/1.1.3/style/weui.min.css" rel="stylesheet"> <link href="https://cdn.bootcss.com/jquery-weui/1.2.1/css/jquery-weui.min.css" rel="stylesheet"> <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/1.9.2/skins/default/index.css"/> <script type="text/javascript" src="https://g.alicdn.com/de/prismplayer/1.9.2/prism.js"></script> <script src="https://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script> <script src="https://cdn.bootcss.com/jquery-weui/1.2.1/js/jquery-weui.min.js"></script> <style type="text/css"> body{ min-width: 320px; max-width: 640px; margin: 0 auto; } .weui-panel__hd{ color: #333; font-size: 18px; padding-top: 0; } .weui-cells:after, .weui-cells:before, .weui-cell:after, .weui-cell:before { display: none; } .weui-panel:after, .weui-panel:before{ display: none; } </style> </head> <body> <div class="" style="max-width: 640px;min-width: 320px;width: 100%;height: auto;margin-top: 20px"> <div id="" style="line-height: 24px;text-align: center; margin-bottom: 15px; font-size: 20px"> ${(video.name)!} </div> <div id="J_prismPlayer" style="max-width: 640px;min-width: 320px;width: 100%; height: auto;margin: 0 auto;" controls> </div> </div> <div class="weui-panel weui-panel_access"> <div class="weui-panel__hd">相关视频推荐</div> <div class="weui-panel__bd" id="J-call-app"> <#list videoList as video> <#--<a href="${contextPath}/video/play/${video.id};" class="weui-media-box weui-media-box_appmsg">--> <a href="javascript:void(0);" class="weui-media-box weui-media-box_appmsg"> <div class="weui-media-box__hd"> <img style="width: 60px; height: 60px" src="${(video.imagePath)!}"> </div> <div class="weui-media-box__bd"> <h4 class="weui-media-box__title">${(video.name)!}</h4> <p class="weui-media-box__desc">${(video.description)!}</p> </div> </a> </#list> </div> </div> <#--下载app地址--> <input id="J-download-app" type="hidden" name="storeurl" value="http://m.chanyouji.cn/apk/chanyouji-2.2.0.apk"> <script> var player = new prismplayer({//视频播放插件 id: "J_prismPlayer", autoplay: true, width: "auto", //height: "auto", vid: "${(video.videoId)!}", playauth: "${(playAuth)!}", }); $("#J_prismPlayer").find("video").each(function(i){ $(this).attr({"controls":"controls","loop":"loop"}); }); //视频添加全屏进度条声音及自动播放等控件 $(".prism-controlbar").hide(); //去掉时间重复 $("#J_prismPlayer").click(function () { $(".prism-controlbar").hide(); })//避免点击视频时出现两个时间 $("video").trigger("play");//for auto play $("video").addClass('pause');//for check pause or play add a class $('video').click(function() { if ($(this).hasClass('pause')) { $("video").trigger("play"); $(this).removeClass('pause'); $(this).addClass('play'); } else { $("video").trigger("pause"); $(this).removeClass('play'); $(this).addClass('pause'); } })//添加点击视频就能播放暂停 $("#J-call-app").click(function () { adds(); }); function adds(){ var ua = navigator.userAgent.toLowerCase(); //识别用户的客户端,可以判断是什么软件 var t; var config = { /*scheme:必须*/ scheme_IOS: 'cundong://', //苹果 scheme_Adr: 'cundong://splash', //安卓 download_url: document.getElementById('J-download-app').value, //下载地址 timeout: 600 }; openclient(); function openclient() { var startTime = Date.now(); var ifr = document.createElement('iframe'); ifr.src = ua.indexOf('os') > 0 ? config.scheme_IOS : config.scheme_Adr; ifr.style.display = 'none'; document.body.appendChild(ifr); var t = setTimeout(function() { var endTime = Date.now(); if ( endTime - startTime< (config.timeout + 200)) { if(ua.match(/MicroMessenger/i)=="micromessenger"){ //判断是否是微信中扫描的二维码 alert("请点击右上角 ... 按钮选择在浏览器打开"); return; } if(ua.indexOf('os') > 0){//大于0是苹果端 alert("苹果") } if(ua.indexOf('os') < 0){//小于0是安卓端 -1 alert("安卓"); } window.location = config.download_url; //在浏览器中直接下载 } }, config.timeout); } window.addEventListener("DOMContentLoaded", function(){ document.getElementById("J-call-app").addEventListener('click',openclient,false); }, false); } </script> </body> </html> |
java-简单二维码制作相关推荐
- 【C#】简单二维码制作和打印
系列文章 [C#]条码管理操作手册 本文链接:https://blog.csdn.net/youcheng_ge/article/details/126589496 [C#]IIS平台下,WebAPI ...
- Java实现简单二维码制作
实现流程: pc端: 1:打开二维码登录网页index.html 2:index.html调用GetQrCodeServlet 3:GetQrCodeServlet干2件事 a:生成随机的uuid,是 ...
- 怎么做二维码?二维码制作的简单方法
二维码在日常的用途非常的广泛,比如付款二维码,信息统计二维码,问卷调查二维码,网页跳转二维码...都是常见的二维码类型.通过扫码识别来进行操作,让生活更加的便利,那么这些二维码是如何制作出来的呢?下面 ...
- 二维码制作方法有哪些?教你简单的二维码制作方法
二维码是怎么制作的呢?二维码是用某种特定的几何图形按照一定规律在平面(二维方向)分布的黑白相间的图形记录数据符号信息的.现如今,随着智能手机的广泛普及和技术的不断改进,二维码已经被广泛应用于商业领域中 ...
- 有没有二维码制作工具?二维码制作其实很简单
有没有二维码制作工具?二维码现如今作为我们日常获取信息的常见工具,对我们自身还是他人都是十分重要的,那么问题来了,二维码怎么制作呢?我们个人可以完成吗?答案当然是肯定的,我们自己借助一些好用的工具就可 ...
- java 生成二维码 QRCode、zxing 两种方式
版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢. https://blog.csdn.net/testcs_dn/article/details/ ...
- 二维码相关---java生成二维码名片,并且自动保存到手机通讯录中...
二维码相关---java生成二维码名片,并且自动保存到手机通讯录中... 技术qq交流群:JavaDream:251572072 1.首先介绍一个api. Zxing是Google提供的关于条码 ...
- Java生成二维码带LOGO底部标题竖版字体
前言 Java后端生成二维码 底部 侧面带有标题,可调节字号 参考文章 使用Java生成二维码图片(亲测) Reborn_YY使用Java生成二维码图片 图标素材库 Java后台生成图片,前台实现图片 ...
- 二维码制作方法分享,学会这招轻松制作二维码
随着当今科技发展,二维码已经与大家的日常生活中有着密切的联系,例如扫码支付.扫一扫添加好友等.简单的来说二维码就是一条信息,它或许是一个网站链接,也可以是一段文字,而我们可以把自己的个人平台等制作成一 ...
最新文章
- MVC中,视图的Layout使用
- 小甲鱼 OllyDbg 教程系列 (三) :PJ 软件功能限制
- 中国五大物联网平台优势分析
- Python:Python全球生态主站,pip安装方法、集成安装方法、文件安装方法、第三方库自动安装脚本
- bzoj4171: Rhl的游戏
- processing一个作品_当你触摸到一束光| 交互灯光装置课程学员作品回顾
- 5个必看的Docker视频
- 未能连接到imap服务器,roundcube无法连接imap服务器登录
- 函数相乘和相除的导数及证明
- python(2048)
- 判断一年放了多少天假
- Python爬虫:中国结算,关于新开股票账户数等参数数据的爬取
- 膳食纤维之短链脂肪酸
- Java核心技术卷一(百度云资源)
- HR面试经验总结 | HR面试常问问题
- taskkill /im test.exe /f
- cocos2d-luajit文件还原
- html如何布局div标签,用Div标签进行网页布局
- arcmap十进制度和度分秒相互转换
- 如何查看搜狗输入法的版本
热门文章
- 5G/NR SSB与PRACH occasion如何关联?
- excel文件不能编辑怎么回事?
- Pytorch+cpp_cuda extension 课程二
- 微信云开发配置自有域名(短信跳转小程序)
- js时间搓转时间,日期横杠转斜杠,时间转时间搓,年月日补个零,星期几,获取当前时间
- 货郎问题和计算复杂度
- python从键盘输入10个整数算出奇数偶数的和_画出流程图,并编程实现: 从键盘上输入10个整数型的数值,分别统计奇数和偶数的个数。_概率论与数理统计答案_学小易找答案...
- 五子棋游戏AI智能算法设计
- errorcode 微信分享_微信公众号网页授权code问题
- android 投屏截图,手机投屏到电脑上怎样截图?图片格式可以这样设置