您的位置:首页 > 移动开发 > Android开发

android画文本

2015-10-12 22:14 375 查看


一、FontMetrics

在使用Paint画text的时候,android使用和se中awt库的LineMetrics一样,来存储一行文字基于基准线的一些数据,这就是FontMetrics,存储为float,google还提供了一个Int版本,为了理解这个类,先上图:



这是我找到的一张史上最全的图片,包括文本字体信息的所有内容。

对应FontMetrics中的域分别为:

baseline:绘制一行文本的基准点,需要注意的是通过Paint.getTextBounds得到的Rect坐标是针对baseline上面的origin来定义的。

ascent:baseline到这行字符的最高处

descent:baseline到字符的最低处(强烈注意,字符最高处并不是整行的最高最低位置,和下面的top buttom区分)

leading:上一行字符到下一行字符之间的间距,详细描述就是上一行的descent到下一行ascent,拳拳到肉的感觉

top:这一行文本所占空间的顶部

buttom:这一行的底部


二、一个例子

在网上看到一个nice的例子,贴下来:

效果如下:



最上面黑色  top       黄色 ascent    红线 baseline  蓝线  descent  最底下绿色 buttom

两个矩形分别是 

测试:ijk 的外围框。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: