關於繪製圓角矩形的方式 api 21 以下

2021-07-25 18:23:04 字數 434 閱讀 5493

在api 21開始可以使用drawroundrect實現圓角矩形, 

但是在底於這個版本的系統中怎麼繪製呢?

我想過一種使用乙個半圓與矩形拼接的方式, 但在有的系統中, 兩個圖總不能完美的連線,  (因為要與父容器背景透明疊加), 兩個拼接處如果沒有座標偏移(連續繪製), 則會出現疊加,顏色變深, 估計是因為有抗鋸齒的處理導致的, 如果偏移1個px,則會出現乙個斷開的縫.

後面在網上找了一種變通的方法,  就是使用畫線的方式. (只能實現線的兩端是半圓).

介面 setstrokecap   設定引數cap.round

設定好線寬, 就可以得到兩端是半圓的矩形區域.

但這個方法也不是通用的.  在miui 的android4.1.2上,   cap.round這個引數似乎無效,  還是顯示為矩形直線.

請教大家, 有沒有好的實現方式. 謝謝了, 

Cocos2d x繪製圓角矩形

brief 畫圓角矩形 param origin 矩形開始點 param destination 矩形結束點 param radius 圓角半徑 param segments 圓角等份數,等份越多,圓角越平滑 param bfill 是否填充 param color 填充顏色 attention v...

用openGL ES繪製圓角矩形的實現

不廢話,直接上 呼叫部分 roundrect 200,x 400,y 400,width 300,height 25,corner radius,at least less than 140?64 need to be dividable by 4 實現部分 typedef struct vecto...

13 繪製矩形的簡寫方式

1 doctype html 2 html lang en 3 head 4 meta charset utf 8 5 title 13 canvas繪製矩形 title 6 style 7 11canvas 16style 17head 18 body 19 canvas width 300 he...