Android文字測量與繪製Tips

2021-06-22 13:16:17 字數 441 閱讀 9294

1、在用canvas繪製文字時需要測量文字的繪製範圍,比如字型的高度、寬度,常用的方法是使用paint.gettextbound(string text,int start,int end,rect rect),然後通過傳入的rect返回長寬,不過這個測量的寬度有些誤差,導致計算位置座標是偏移。paint還有乙個方法measuretext(),這個方法只會計算文字的寬度,而且是精確的,這樣就可以解決上面偏移的問題。

2、canvas.drawtext(text, x, y, paint),需要指定繪製的起點x,y,這裡的x,y指的是左下點

3、文字高度測量的另一種方法

paint.fontmetrics fontmetrics = mtextpaint.getfontmetrics();

mtextheight = fontmetrics.bottom;

Android文字的測量和繪製

翻譯與 chris banes的部落格 如果你想手動在android canvas上畫些什麼東西,你最好從繪製文字開始。文字繪製之前,你需要知道測量文字的繪製位置,計算文字x y軸的位置。paint mtextpaint new paint mtextpaint.settextalign paint...

Android 文字居中繪製

遊戲中需要用到繪製玩家暱稱,繪製在乙個固定大小的rect中,要求文字左右和上下都居中,左右居中繪製比較容易,設定paint.settextalign align.center 並且設定需要繪製的字元的x座標是rect.width 2即可,上下居中要稍微麻煩一些,先要使用fontmetrics物件計算...

Android文字繪製Staticlayout

public staticlayout charsequence source,textpaint paint,int width,alignment align,float spacingmult,float spacingadd,boolean includepad public staticl...