Android中Paint字型屬性的設定

2021-06-16 07:10:10 字數 1447 閱讀 5466

在android sdk中使用typeface類來定義字型,可以通過常用字型型別名稱進行設定,如設定預設黑體:

paint mp = new paint(

);

mp.settypeface(typeface.default_bold)

常用的字型型別名稱還有:

除了字型型別設定之外,還可以為字型型別設定字型風格,如設定粗體:

paint mp = new paint(

);

typeface font = typeface.create(typeface.sans_serif, typeface.bold);
p.settypeface( font );

常用的字型風格名稱還有:

但是有時上面那些設定在繪圖過程中是不起作用的,所以還有如下設定方式:

paint mp = new paint(

);

mp.setfakeboldtext(

true

); //true為粗體,false為非粗體

mp.settextskewx(

-0.5f); //float型別引數,負數表示右斜,整數左斜

mp.setunderlinetext(

true

); //true為下劃線,false為非下劃線

mp.setstrikethrutext(

true

); //true為刪除線,false為非刪除線

paint常用的方法還有:

mp.settextsize(

); //設定字型大小,int型,如12

mp.setstrokewidth(w); //設定線寬,float型,如2.5f,預設繪文字無需設定(預設值好像為0),但假如設定了,再繪製文字的時候一定要恢復到0

說明:對於中文粗體的設定,好像只能通過setfakeboldtext(true)來實現,儘管效果看起來不是很實在(字型中空效果)。實際發現,最後繪製的效果與手機硬體也有些關係,比如前面的繪圖測試程式,在htc裡面黑體中文一行壓根沒顯示(英文和數字是正常的),而斜體一行倒顯示了,只是沒有斜體效果。魅族m9表現的很給力,可能是m9定製的android系統裡面字型庫比較豐富吧!

原文出處:

Android中Paint字型屬性的設定

在android sdk中使用typeface類來定義字型,可以通過常用字型型別名稱進行設定,如設定預設黑體 paint mp newpaint mp.settypeface typeface.default bold 常用的字型型別名稱還有 typeface.default 常規字型型別 type...

android中Paint類引數介紹

paint即畫筆,在繪製文字和圖形用它來設定圖形顏色,樣式等繪製資訊。1.圖形繪製 setargb int a,int r,int g,int b 設定繪製的顏色,a代表透明度,r,g,b代表顏色值。setalpha int a 設定繪製圖形的透明度。setcolor int color 設定繪製的...

android中利用Paint繪製文字使其居中

要使文字垂直居中,可利用canvas的drawtext text,x,y,paint 方法,其中第三個引數y應該是baseline的值,計算公式如下 int baseline getmeasuredheight paint.descent paint.ascent 2 paint.ascent 即使...