Android技术知识Android知识Android开发经验谈

Android Text文字大小与文字宽高之间的方程式

2017-09-08  本文已影响0人  SLTPAYA

总结Android TextView中设置文字字号(sp)与文字的宽度高度(dp)之间的对应关系

用数据说话

各个数据之间的关系

TextView字号从12sp到44sp依次测量出字体的高度和宽度

Paint.FontMetrics m = paint.getFontMetrics();
float height = m.bottom - m.top;//得到字体的高度: px,通过与设备像素密度相除得到相应的dp值(注: 使用paint.getTextBounds()方法测出的结果只属于字体的显示范围,不是其实际显示所占有的空间)
float width = paint.measureText(content, 0, 1);//宽度通过measureText测出单个字符的宽度

通过excel整理得x,y散点图

得到公式:

Heigth = (size + 0.00000007) / 0.7535
Width = size(宽度和字体字号是相同的,12sp字体,单字宽为12dp)

将计算结果与实际结果求差

上一篇 下一篇

猜你喜欢

热点阅读