paint即畫筆,在繪製文字和圖形用它來設定圖形顏色, 樣式等繪製資訊。
1.圖形繪製
setargb(int a,int r,int g,int b);
設定繪製的顏色,a代表透明度,r,g,b代表顏色值。
setalpha(int a);
設定繪製圖形的透明度。
setcolor(int color);
設定繪製的顏色,使用顏色值來表示,該顏色值包括透明度和rgb顏色。
setantialias(boolean aa);
設定是否使用抗鋸齒功能,會消耗較大資源,繪製圖形速度會變慢。
setdither(boolean dither);
設定是否使用影象抖動處理,會使繪製出來的顏色更加平滑和飽滿,影象更加清晰
setfilterbitmap(boolean filter);
如果該項設定為true,則影象在動畫進行中會濾掉對bitmap影象的優化操作,加快顯示
速度,本設定項依賴於dither和xfermode的設定
setmaskfilter(maskfilter maskfilter);
設定maskfilter,可以用不同的maskfilter實現濾鏡的效果,如濾化,立體等
setcolorfilter(colorfilter colorfilter);
設定顏色過濾器,可以在繪製顏色時實現不用顏色的變換效果
setpatheffect(patheffect effect);
設定繪製路徑的效果,如點畫線等
setshader(shader shader);
設定影象效果,使用shader可以繪製出各種漸變效果
setshadowlayer(float radius ,float dx,float dy,int color);
在圖形下面設定陰影層,產生陰影效果,radius為陰影的角度,dx和dy為陰影在x軸和y軸上的距離,color為陰影的顏色
setstyle(paint.style style);
設定畫筆的樣式,為fill,fill_or_stroke,或stroke
setstrokecap(paint.cap cap);
當畫筆樣式為stroke或fill_or_stroke時,設定筆刷的圖形樣式,如圓形樣式
cap.round,或方形樣式cap.square
setsrokejoin(paint.join join);
設定繪製時各圖形的結合方式,如平滑效果等
setstrokewidth(float width);
當畫筆樣式為stroke或fill_or_stroke時,設定筆刷的粗細度
setxfermode(xfermode xfermode);
設定圖形重疊時的處理方式,如合併,取交集或並集,經常用來製作橡皮的擦除效果
2.文字繪製
setfakeboldtext(boolean fakeboldtext);
模擬實現粗體文字,設定在小字型上效果會非常差
setsubpixeltext(boolean subpixeltext);
設定該項為true,將有助於文字在lcd螢幕上的顯示效果
settextalign(paint.align align);
設定繪製文字的對齊方向
settextscalex(float scalex);
設定繪製文字x軸的縮放比例,可以實現文字的拉伸的效果
settextsize(float textsize);
設定繪製文字的字型大小大小
settextskewx(float skewx);
設定斜體文字,skewx為傾斜弧度
settypeface(typeface typeface);
設定typeface物件,即字型風格,包括粗體,斜體以及襯線體,非襯線體等
setunderlinetext(boolean underlinetext);
設定帶有下劃線的文字效果
setstrikethrutext(boolean strikethrutext);
設定帶有刪除線的效果
Android中Paint字型屬性的設定
在android sdk中使用typeface類來定義字型,可以通過常用字型型別名稱進行設定,如設定預設黑體 paint mp new paint mp.settypeface typeface.default bold 常用的字型型別名稱還有 除了字型型別設定之外,還可以為字型型別設定字型風格,如...
Android中Paint字型屬性的設定
在android sdk中使用typeface類來定義字型,可以通過常用字型型別名稱進行設定,如設定預設黑體 paint mp newpaint mp.settypeface typeface.default bold 常用的字型型別名稱還有 typeface.default 常規字型型別 type...
android中利用Paint繪製文字使其居中
要使文字垂直居中,可利用canvas的drawtext text,x,y,paint 方法,其中第三個引數y應該是baseline的值,計算公式如下 int baseline getmeasuredheight paint.descent paint.ascent 2 paint.ascent 即使...