android drawText()使用小记

1.对于drawText()的使用网上有很多说明,多次使用后总结如下:
           //确定文字绘制区域 
Rect targetRect = new Rect(0, (int) ((2*r)-ImageTop-ModeTextSize), getWidth(), (int)((2*r)-ImageTop));
       
            mPaint.setColor(Color.RED);
//需要在<span style="font-family: Arial, Helvetica, sans-serif;">mPaint.getFontMetricsInt();之前设置设置字体大小或者默认大小

            mPaint.setTextSize(ModeTextSize);
            mPaint.setColor(Color.WHITE);
            Paint.FontMetricsInt fontMetrics = mPaint.getFontMetricsInt();
//部分网上资料这里使用的是fontMetrics.bottom,发现总是偏下,但使用bottom好像是合理的,不知道具体是什么原因,猜想可能谷歌给的上部分空白空间给特殊语种的,或者拼音标注什么的,待查
            int baseline = (targetRect.bottom + targetRect.top - fontMetrics.ascent + fontMetrics.descent) / 2- fontMetrics.bottom;
            mPaint.setTextAlign(Paint.Align.CENTER);
            canvas.drawText(TxMode, targetRect.centerX(), baseline, mPaint);


      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值