onDraw测量字体占用宽度
在onDraw方法中可以使用Paint对象的measureText()方法来测量字体占用的宽度。该方法接收一个字符串作为参数,返回该字符串在当前Paint对象下的占用宽度。
示例代码:
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
String text = "Hello World!";
Paint paint = new Paint();
paint.setTextSize(50);
float textWidth = paint.measureText(text);
canvas.drawText(text, getWidth()/2 - textWidth/2, getHeight()/2, paint);
}
在上述代码中,我们先定义了一个字符串text,然后创建一个Paint对象并设置字体大小为50。接着使用Paint对象的measureText方法测量字符串text在该Paint对象下的占用宽度,并将其赋值给变量textWidth。最后使用Canvas的drawText方法将字符串绘制在屏幕中间。由于字符串可能不是单行显示,因此还需要考虑行间距和行高等因素来计算字符串的实际绘制位置。
原文地址: https://www.cveoy.top/t/topic/bquu 著作权归作者所有。请勿转载和采集!