通過canvas畫可自定義顏色段的圓環,可當進度條使用,本文章做了簡單的封裝可直接使用,也可自定義更改。
同上篇,需要設定外層的item-canvas的寬高,內層canvas會設定成和外層一樣。
定義函式
function process()
//此處為每格多出來的部分
if (ring.percent % 10 !== 0) } }
簡單封裝
顏色可以從函式拿出來在外面定義每格的顏色。
var divitem = document.queryselector(".item-canvas");
var canvasw = divitem.offsetwidth;
var canvash = divitem.offsetwidth;
process()
效果圖如下:
Canvas非覆蓋畫圓環扇形
需求最優解 嘗試丟擲問題 基本都是畫餅狀然後中心覆蓋乙個圓,可是我需要的是透明非覆蓋的乙個圓環扇形整體,動手吧。嘗試的辦法有以下幾種 畫兩個同角度的餅狀扇形,利用source in source out xor去重的功能,填充非重疊部分。還是畫兩個餅狀扇形,然後利用奇偶環繞fill evdodd 填...
UIView畫圓 切圓環
對於一些圓,或者圓環我們可以用uiview進行切出來。案例 原圖 效果圖 主要 如下 設定圓環 self.pointview.layer.cornerradius 11 設定圓形的程度 self.pointview.layer.maskstobounds yes 設定是否切圓 self.pointv...
使用svg畫圓環
專案中需要乙個圓形進度條,本著能省則省的原則,先去elementui上看了下,傻眼了,不一樣,ui直接否定了這個辦法。這個沒啥難點,cx,cy,r分別表示圓心 x,y 和半徑r,stroke width是圓的邊,stroke表示邊的顏色,fill表示整個圓的填充顏色。其實就是兩個同心圓,裡面的圓的邊...