中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

h5canvas實現刮刮樂效果的方法

發布時間:2020-10-24 16:57:25 來源:億速云 閱讀:358 作者:小新 欄目:web開發

這篇文章主要介紹h5canvas實現刮刮樂效果的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

canvas實現刮刮樂主要是要注意兩個地方:第一個是將繪制的圖形設置成背景圖片(用到toDataURL屬性),這樣在擦覆蓋層的時候才不會丟失繪制的圖案,

第二個是設置在繪制插圖的時候,設置透明透明(用到globalCompositeOperation屬性)

h5canvas實現刮刮樂效果的方法

代碼如下:

<script>
    var arr=[
        {name:"iphone7 磨砂黑",color:"rgba(255,255,0,1)"},
        {name:"iphone7 磨砂黑",color:"rgba(0,255,0,.9)"},
        {name:"iphone7 磨砂黑",color:"rgba(10,255,255,1)"},
        {name:"iphone7 磨砂黑",color:"rgba(10,255,100,1)"}
    ]
    var r=Math.random();
    var rIndex= Math.floor(r*arr.length);
    var rPrice=arr[rIndex];
    var cv=document.getElementsByTagName('canvas')[0];
    var isDown=false;
    cv.height=400;
    cv.width=600;
    var ctx=cv.getContext("2d");
    function toAngle(radian){
        return radian/Math.PI*180;
    }
    function toRadian(angle){
        return angle/180*Math.PI;
    }
    ctx.textAlign="center";
    ctx.textBaseline="middle";
    ctx.font="30px consolas";
    ctx.fillStyle=rPrice.color;
    ctx.fillText(rPrice.name,cv.width/2,cv.height/2);

    var dataURL=cv.toDataURL("image/jpg",1);
    cv.style.background="url("+dataURL+")";

    //覆蓋層
    ctx.beginPath();
    ctx.fillStyle="#eee";
    ctx.fillRect(0,0,cv.width,cv.height);

    cv.addEventListener("mousedown",function(){
        isDown=true;
    })
    cv.addEventListener("mouseup",function(){
        isDown=false;
        ctx.globalCompositeOperation="source-out"
    })
    cv.addEventListener("mousemove",function(e){
        if (isDown){
            ctx.globalCompositeOperation="destination-out";
            ctx.beginPath();
            var posObj=cv.getBoundingClientRect();

            var left=posObj.left;
            var top=posObj.top;

            var x= e.clientX-left;
            var y= e.clientY-top;

            ctx.arc(x,y,50,0,Math.PI*2);
            ctx.fill();
        }
    })
</script>

以上是h5canvas實現刮刮樂效果的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

璧山县| 辛集市| 新干县| 河南省| 揭阳市| 昭通市| 榆中县| 容城县| 黔西县| 额尔古纳市| 东光县| 双柏县| 满洲里市| 道孚县| 桐庐县| 荥经县| 大兴区| 洛宁县| 宜兰市| 青海省| 邮箱| 山西省| 托克托县| 连江县| 大丰市| 安仁县| 禹州市| 镇平县| 新晃| 镇安县| 垫江县| 长垣县| 栾城县| 三穗县| 吉林市| 迁安市| 浏阳市| 汽车| 电白县| 岫岩| 邵阳县|