使用canvas實(shí)現(xiàn)了放大鏡效果先畫張圖片到img上在鼠標(biāo)on 和move 于canvas時(shí)實(shí)現(xiàn)放大鏡效果,可以借助于離屏canvas當(dāng)鼠標(biāo)on 和move于canvas時(shí),將鼠標(biāo)所在地址(x,y)作為正方形的中心,并將正方形區(qū)域內(nèi)的像素?cái)?shù)據(jù)放置到離屏canvas中,然后將離屏canvas放置于canvas對(duì)應(yīng)位置,放置時(shí)使這部分的像素?cái)?shù)據(jù)放大一定倍數(shù)。此處,為了方便,可以將離屏canvas的大小設(shè)置為與正方形的大小一致根據(jù)以上步驟也實(shí)現(xiàn)了放大效果,我現(xiàn)在的疑問(wèn)是,如何實(shí)現(xiàn)一個(gè)圓形的放大鏡呢, 離屏canvas 的形狀只能是矩形的,putImageData() 和 drawImage()也都只能放置 獲取矩形區(qū)域內(nèi)的像素?cái)?shù)據(jù),,所以,圓形的放大鏡該如何實(shí)現(xiàn)呢?
2 回答

慕函數(shù)0883431
TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超1個(gè)贊
canvas 有一個(gè)clip 方法,可以用來(lái)剪切畫布中任意形狀和尺寸;剪出來(lái)放到 arc()畫出的圓圈中
- 2 回答
- 3 關(guān)注
- 2293 瀏覽
添加回答
舉報(bào)
0/150
提交
取消