<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style type="text/css">
*{margin: 0;padding: 0;}
</style>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<!--一键复制 js-->
</head>
<body>
<!--字体设置-->
<script type="text/javascript">
// “()()”表示自执行函数
(function (doc, win) {
var docEl = doc.documentElement,
// 手机旋转事件,大部分手机浏览器都支持 onorientationchange 如果不支持,可以使用原始的 resize
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
recalc = function () {
//clientWidth: 获取对象可见内容的宽度,不包括滚动条,不包括边框
var clientWidth = docEl.clientWidth;
if (!clientWidth) return;
docEl.style.fontSize = 10*(clientWidth / 320) + 'px';
};
recalc();
//判断是否支持监听事件 ,不支持则停止
if (!doc.addEventListener) return;
//注册翻转事件
win.addEventListener(resizeEvt, recalc, false);
})(document, window);
</script>
<div class="qrcodeContent">
<div class="imgContent" style="width: 60%;margin: 0 auto;">
<img src="img/timg.jpg" style="width: 52%;"/>
<img src="img/mycode.jpg" style="width: 40%;"/>
<div class="btn" style="padding: 2rem 0;text-align: center;">
<button id="btn" style="font-size: 1rem;">点击合成</button>
</div>
</div>
<!--二维码-->
<div class="qrcodeCanvas" style="display: none;width: 51%;margin: 0 auto;height: 12.5rem;">
<img class="imgBox" src="img/timg.jpg" style="display: none;width: 100%;height: 100%;"/>
<img class="imgCode" src="img/mycode.jpg" style="display: none;width: 5.5rem;height: 5.5rem;"/>
<div id="qrcodeCanvas"></div>
</div>
<!--一键复制-->
<!--<div class="share">
<p>长按上图保存图片</p>
<p>或</p>
<button class="copyBtn" data-clipboard-text="">复制分享链接</button>
<p>将图片或者链接分享给您的好友</p>
</div>-->
</div>
</body>
<script type="text/javascript">
$(function() {
//生成画布
hecheng();
function hecheng(){
draw(function(){
document.getElementById('qrcodeCanvas').innerHTML='<img src="'+base64[0]+'">';
})
}
var base64=[];
function draw(fn) {
var imgArr = ['img/timg.jpg','img/mycode.jpg'];
var c = document.createElement('canvas'),
ctx = c.getContext('2d'),
len = imgArr.length;
c.width = $(".qrcodeCanvas").width();
c.height = $(".qrcodeCanvas").height();
ctx.rect(0,0,c.width,c.height);
ctx.fillStyle='#ccc';
ctx.fill();
function drawing(n) {
if (n<len) {
var img = new Image;
img.src = imgArr[n];
img.onload = function() {
if (n==1) {
var codeW = $(".imgCode").width(), codeH = $(".imgCode").height(),
offleft = ($(".qrcodeCanvas").width()/2) - codeW/1.1,
offtop = $(".qrcodeCanvas").height()/3;
ctx.drawImage(img,offleft,offtop,codeW,codeH);
drawing(n+1);
} else {
ctx.drawImage(img,0,0,c.width,c.height);
drawing(n+1);
}
}
} else {
base64.push(c.toDataURL("image/jpeg",0.8));
fn();
}
}
drawing(0);
}
clickFunc();
function clickFunc() {
$("#btn").unbind("click").click(function() {
$(".qrcodeCanvas").toggle();
})
}
})
</script>
</html>
图片合成,使用canvas,做一个漂亮的二维码分享
5星 · 超过95%的资源 需积分: 39 183 浏览量
2018-04-08
15:42:48
上传
评论
收藏 2.32MB RAR 举报
zkau0518
- 粉丝: 3
- 资源: 7
最新资源
- 数据源-数据可视化(七):Pandas香港酒店数据高级分析,涉及相关系数,协方差,数据离散化,透视表等精美可视化展示
- linux常用命令大全.doc
- 格拉斯哥大学空缺职位申请详细介绍Applicant Guide.pdf
- mmexport1702953347189.mp4
- 2023NOC软件创意编程初中组C++决赛
- 2023NOC软件创意编程赛项真题-python初中决赛
- 2023NOC软件创意编程赛项真题-python小高决赛
- WA4320H-FIT-集客AP220G-FULL编程器固件
- 2023NOC软件创意编程赛项真题图形化小学高年级-决赛
- 2023NOC软件创意编程赛项真题图形化小学低年级-决赛
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈