為文字設定 Paint

文字繪圖設定

  • setTypeface(Typeface typeface) 設定字型。見字型
  • setTextSize(int size) 設定字型大小(以畫素為單位)。
  • setColor(int color) 設定繪畫顏色,包括文字顏色。你也可以使用 setARGB(int a, int r, int g, int bsetAlpha(int alpha)
  • setLetterSpacing(float size) 設定字元間的間距,單位為 ems。預設值為 0,負值將收緊文字,而正值將擴充套件它。
  • setTextAlign(Paint.Align align) 設定相對於其原點的文字對齊方式。Paint.Align.LEFT 將它繪製到原點的右側,RIGHT 將它繪製到左側,CENTER 將它繪製在原點的中心(水平)
  • setTextSkewX(float skewX) 這可以被認為是偽斜體。SkewX 表示文字底部的水平偏移。 (使用 -0.25 表示斜體)
  • setStyle(Paint.Style style) 填寫文字 FILL,筆劃文字 STROKE,或兩者 FILL_AND_STROKE

請注意,你可以使用 TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, size, getResources().getDisplayMetrics()) 將 SP 或 DP 轉換為畫素。

測量文字

  • float width = paint.measureText(String text) 測量文字的寬度
  • float height = paint.ascent() 測量文字的高度
  • paint.getTextBounds(String text, int start, int end, Rect bounds 儲存文字尺寸。你已經分配了 Rect,它不能為 null:
 String text = "Hello world!";
 Rect bounds = new Rect();
 paint.getTextBounds(text, 0, text.length(), bounds);

還有其他測量方法,但這三種方法應該適合大多數用途。