Canvas drawText 不显示

自定义字体高度在Canvas绘制文本实现
本文详细解释了如何在Canvas中通过自定义方法获取字体高度,并使用该高度来正确绘制文本,解决了文本位置不对齐的问题。

canvas.drawText("hello world",0,0,new Paint()); // 以上代码不显示任何文本信息 注意 该方法的 两个参数, 第一个是 字符串 左边 的x 坐标(left), 第二个是 。。。 底部 的y 坐标(botton而不是top),

如果想让字符串按照自己的意愿显示正常, 需要

canvas.drawText("hello world", 0, GraphicsUtils.getFontHeight(null), new Paint());

其中 GraphicsUtils.getFontHeight(null) 是自定义的方法 代码附上

/** * 获取字体高度 * @param textSize : textSize==null时 获取字符串的默认字体, */ public static int getFontHeight(Integer textSize){ Paint paint = new Paint(); if(textSize != null){ paint.setTextSize(textSize); } FontMetrics fm = paint.getFontMetrics(); return (int)(fm.descent - fm.ascent); }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值