本篇內(nèi)容主要講解“html5中怎么用canvas繪制橢圓并保持線條粗細均勻”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“html5中怎么用canvas繪制橢圓并保持線條粗細均勻”吧!
公司主營業(yè)務(wù):網(wǎng)站設(shè)計制作、成都網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出肇東免費做網(wǎng)站回饋大家。
Canvas里繪制橢圓是一個很常見的需求,比較新的HTML Canvas 2D Context W3C草案里面新增了ellipse方法繪制橢圓,但是目前大多數(shù)瀏覽器還沒有實現(xiàn)該方法,所以需要用arc或者arcTo方法結(jié)合scale變形來繪制橢圓。
示例代碼:
復制代碼
代碼如下:
var ctx = documentquerySelector('canvas')getContext('2d');
ctxlineWidth = "10";
ctxscale(1,2);
ctxarc(150,150,100,0,MathPI*2,false);
ctxstroke();
有點不對,因為線條粗細不均勻了,stroke也被scale影響了。
要修正這個問題,就要一點點小技巧了。
示例代碼:
復制代碼
代碼如下:
[code]
var ctx = documentquerySelector('canvas')getContext('2d');
ctxlineWidth = "10";
ctxsave();
ctxscale(1,2);
ctxarc(150,150,100,0,MathPI*2,false);
ctxrestore();
ctxstroke();
[/code]
現(xiàn)在均勻了,非常完美。
技巧就在先save保存畫布狀態(tài),然后縮放、調(diào)用路徑指令,再restore恢復畫布狀態(tài),再stroke繪制出來。
關(guān)鍵點是先save后縮放,先restore后stroke.
到此,相信大家對“html5中怎么用canvas繪制橢圓并保持線條粗細均勻”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!