js+canvas多张图片合成一张图片代码,将多张图片元素合成为一张图片的效果。
js代码
<script> function hecheng(){ draw(function(){ document.getElementById(\'imgBox\').innerHTML=\'<p style=\"padding:10px 0\">合成图片成功!可以鼠标另存图片查看我是否是一张图片~~!</p><img src=\"\'+base64[0]+\'\">\'; }) } var data=[\'img1.png\',\'img2.png\',\'img3.png\',\'img4.png\'],base64=[]; function draw(fn){ var c=document.createElement(\'canvas\'), ctx=c.getContext(\'2d\'), len=data.length; c.width=290; c.height=290; ctx.rect(0,0,c.width,c.height); ctx.fillStyle=\'#fff\'; ctx.fill(); function drawing(n){ if(n<len){ var img=new Image; //img.crossOrigin = \'Anonymous\'; //解决跨域 img.src=data[n]; img.onload=function(){ ctx.drawImage(img,0,0,290,290); drawing(n+1);//递归 } }else{ //保存生成作品图片 base64.push(c.toDataURL(\"image/jpeg\",0.8)); //alert(JSON.stringify(base64)); fn(); } } drawing(0); } </script>
暂无评论内容