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...