在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ H5 canvas中g(shù)lobalCompositeOperation及putIm

H5 canvas中g(shù)lobalCompositeOperation及putImageData()結(jié)合使用

從背景畫布通過getImageData()方法獲得目標(biāo)圖形,是方形的,現(xiàn)在想將方形做成類似拼圖形式的

                //s為方形寬高 r為小圓半徑
                ctx_ceng.beginPath();
                ctx_ceng.moveTo(0, cY);
                ctx_ceng.lineTo(s/2-r,cY);
                ctx_ceng.arc(s/2,cY,25,Math.PI,2*Math.PI);
                ctx_ceng.lineTo(s,cY);
                ctx_ceng.lineTo(s,cY+150);
                ctx_ceng.lineTo(s,cY+150);
                ctx_ceng.arc(s/2,cY+s,25,2*Math.PI,Math.PI,true);
                ctx_ceng.lineTo(0,cY+150);
                ctx_ceng.closePath();
                ctx_ceng.stroke();
                ctx_ceng.fillStyle = 'green';
                ctx_ceng.fill();
                //以上為畫好的拼圖塊
                ctx_ceng.globalCompositeOperation="source-in";//保留重合后添加的部分
              
                ctx_ceng.beginPath();
                ctx_ceng.putImageData(imgData, 0,cY-r);//添加之前獲取的圖片

圖片描述

怎樣操作才能只在綠色部分填充截取到的圖片?求大神支招~~

回答
編輯回答
巴扎嘿

解決了,應(yīng)該用ctx_ceng.globalCompositeOperation="destination-in";

2018年1月22日 15:58