首页 > 微信 > 详细

canvas玩转微信红包

时间:2017-01-26 18:09:30      阅读:441      评论:0      收藏:0      [点我收藏+]

CSS3相关属性:

技术分享技术分享技术分享技术分享技术分享技术分享技术分享技术分享技术分享技术分享

技术分享
<!DOCTYPE html>
<html>
<head lang=‘en‘>
     <meta charset=‘UTF-8‘/>
     <meta name=‘viewport‘ content=‘height=device-height,
                                    width=device-width,
                                    initial-scale= 1.0,
                                    minimum-scale= 1.0,
                                    maximum-scale= 1.0,
                                    user-scale= no‘ />
     <title>canvas玩转微信红包</title>
     <script src=‘jquery-1.10.2.min.js‘ type=‘text/javascript‘></script>
     <style>
     *{
       padding:0px;
       margin:0px;
     }
     #blur-div{
        width: 620px;
        height: 350px;
        position: relative;
        margin: 0 auto;
     }
     #blur-image{
        width: 620px;
        height: 350px;
        display: block;
        margin: 0 auto;
        
        filter: blur(5px); /*grayscale(灰度)/sepia(黄棕色)/saturate(饱和度)/hue-rotate(色相)/invert(反色)/opacity(不透明度)/brightness(明度)/contrast/(对比度)blur(模糊)/drop-shadow(阴影)*/
        -webkit-filter: blur(5px);
        -moz-filter: blur(5px);
        -ms-filter: blur(5px);
        -o-filter: blur(5px);
        
        position: absolute;
        left: 0px;
        top: 0px;
        
        z-index: 0;
     }
     
     #canvas{
        display: block;
        margin: 0 auto;
        
        position: absolute;
        left:0px;
        top: 0px;
        
        z-index: 100;
        //background-color: red;
     }
     .button{
         display: block;
         position: absolute;
         z-index: 200;
         
         width: 100px;
         height: 30px;
         
         color: white;
         text-decoration: none;
         text-align: center;
         line-height: 30px;
         
         border-radius: 5px;
     }
     #reset-button{
        left: 200px;
        bottom: 20px;
        background-color: #085;
     }
     #show-button{
        left: 400px;
        bottom: 20px;
        background-color: #074;
     }
     </style>
</head>
<body>
   <div id=‘blur-div‘>
       <img id=‘blur-image‘ src=‘image.jpg‘/>
       <canvas id=‘canvas‘></canvas>
       <a href=‘javascript:reset()‘ class=‘button‘ id=‘reset-button‘>RESET</a>
       <a href=‘javascript:show()‘ class=‘button‘ id=‘show-button‘>SHOW</a>
   </div>
  
   <script type=‘text/javascript‘>
      var canvasWidth = 620; //window.innerWidth
      var canvasHeight = 350; //window.innerHeight
      var canvas = document.getElementById(‘canvas‘);
      var context = canvas.getContext(‘2d‘);
      
      canvas.width = canvasWidth;
      canvas.height = canvasHeight;
      
      var image = new Image();
      var clippingRegion = {x: -1, y: -1, r: 30};
      image.src = ‘image.jpg‘;
      image.onload = function(e){
           initCanvas();
      }
      function initCanvas(){
           clippingRegion = {x: Math.random()*600, y: Math.random()*300, r: 30};
           draw(image, clippingRegion);
      }
      function  setClippingRegion(clippingRegion){
         context.beginPath();
         context.arc(clippingRegion.x, clippingRegion.y, clippingRegion.r, 0, Math.PI*2, false);  //绘制圆
         context.clip(); //剪辑区域函数
      }
      function draw(image, clippingRegion){
          context.clearRect(0,0,canvas.width,canvas.height);
          context.save();
          setClippingRegion(clippingRegion);
          context.drawImage(image,0,0);
          context.restore();
      }
      function reset(){
        initCanvas();
      }
      function show(){
        var tip = setInterval(function(){
             clippingRegion.r += 20;
             if(clippingRegion.r> Math.max(canvas.width,canvas.height)){
                 clearInterval(tip);
             }
             draw(image, clippingRegion);console.log(‘hahah‘);
         },30);
      }
   </script>
</body>
</html>
View Code

技术分享

(最后效果如上:)

canvas玩转微信红包

原文:http://www.cnblogs.com/aliwa/p/6351779.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!