H5利用html2canvas生成带二维码的分享海报

阅读: 评论:0

H5利用html2canvas生成带二维码的分享海报

H5利用html2canvas生成带二维码的分享海报

相信朋友们一定遇到过类似问题,为了分享美观,H5要生成一个带分享者信息的二维码的海报。具体实现可以借助于html2canvas及qrcode完成此功能。

第一步生成当前页面的二维码,页面包含用户分享OPENID参数;

<script type="text/javascript" src="qrcode.min.js"></script>

//生成二维码
var qrcode = new ElementById("qrcodeCanvas"), {text: '..../{$mybanshu.id}',width: 146,height: 146,colorDark: '#000000',colorLight: '#ffffff',correctLevel: QRCode.CorrectLevel.H
});

text:即为生成二维码的URL可加参数,这代码的意思就是生成一个text为内容的二维码大小是146X146 生成后存放在id为qrcodeCanvas的容器里面。

第二步利用html2canvas把指定ID(haibao)区域内的信息转化为canvas合成海报并展示在ID为CANVAS的DIV里面,因为haibao这个层是放FIXED在一个用户看不到的区域,不能隐藏。当用户拉了滚动条时,生成的海报会有一部分空白,所以当用户点击生成海报的时候要确保浏览器滚动条处于最上方,生成后再滚动到之前的位置。

//生成海报function Creathb(){	    	qim=new Image();//新建一个图片; qim.src=$("#hbtu").attr('src');//图片地址是你准备要加载的地址; var stop = $(document).scrollTop();//先计算滚动高度再滚动到顶部$("body,html").animate({scrollTop: 0},0);if(qimplete){new ElementById('haibao'), {allowTaint: true,useCORS: true,}).then(canvas => {let oImg = new Image();oImg.src = DataURL();  // 导出图片//document.body.appendChild(oImg);   将生成的图片添加到body$(".canvas").html("");$(".canvas").append(oImg)console.log(oImg)});} //生成完成后滚动到原来位置$("body,html").animate({scrollTop: stop},0);}//点击按钮出发生成海报动作$(".creat").click(function(){Creathb();setTimeout(function () { $(".home5").hide();$(".canvas,.mengban,.close,.taps").show();}, 2000); // 延时2秒})

至此,生成海报的功能完成了,有没有很简单。

本文发布于:2024-02-01 21:09:30,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170679297039434.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:数组的问题
下一篇:肯普肽 (Phospho
标签:海报   二维码   html2canvas
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23