`
远走的四叶草
  • 浏览: 5356 次
  • 性别: Icon_minigender_2
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于adroid中drawText的常用设计

阅读更多
setTextSize方法:设置字体大小

【功能说明】该方法用于设置画笔的字体大小。该方法主要用在绘制字符串的场合,对于一些图形则没有效果。

【基本语法】public void setTextSize (float textSize)

其中,参数textSize为字体大小,浮点型数据。
列子:
         paint.setTextSize(50);        //设置画笔字体的大小                 canvas.drawText("Hello Android!", 10, 350, paint);  


setTypeface方法:设置字体样式

【功能说明】该方法用于设置画笔的字体样式,可以指定系统自带的字体,也可以使用自定义的字体。该方法是设置画笔显示文本字体的最常用方法。

【基本语法】public Typeface setTypeface ( Typeface typeface)

其中,参数typeface为字体样式,具有如下几种取值。

Typeface.DEFAULT:默认字体。

Typeface.DEFAULT_BOLD:加粗字体。

Typeface.MONOSPACE:monospace字体。

Typeface.SANS_SERIF:sans字体。

Typeface.SERIF:serif字体。


列子:

    paint.setTypeface(Typeface.SANS_SERIF);    //设置字体样式             canvas.drawText("Hello Android!", 10, 350, paint); 
 

关于使用 canvas.drawText  数值字体设置居中

①水平居中很简单,paint.setTextAlign(Align.CENTER);,然后drawText的X坐标设置为width/2即可。

②竖直居中稍显麻烦,可以使用FontMetrics对象计算文字高度,然后计算baseline,使文字垂直居中,代码如下:

Paint paint = new Paint();
paint.setColor(Color.BLUE);
pait.setTextSize(18);
paint.setTextAlign(Align.CENTER);
FontMetrics = paint.getFontMetrics();//计算文字高度
float fontHeight = fontMetrics.bottom - fontMetrics.top;//计算文字baselinefloat textBaseY = height - (height - fontHeight)/2 - fontMetrics.bottom;
canvas.drawText(text, width/2, textBaseY,paint);
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics