前言
本文是对获取文字高度整理和总结,参考资料源自 statcoverflow的一个回答。具体参看下面的参考链接
获取文字高度的三个方法
paint.getTextBounds(String text, int start, int end, Rect bounds)
paint.getFontMetrics()
StaticLayout
1 paint.getTextBounds(String text, int start, int end, Rect bounds)
参数解释
text : 被测量的文字
start: 被测量文字的起始位置
end: 被测量文字的终止位置,最大为文字的长度
rounds: 被测量文字
功能解释
如果我们想要获取一段string的精确高度,我们可以通过 paint.getTextBounds()方法来实现。
精确高度是指什么?举例来说,下面的 Happy new year 这几个文字中,三个单词的高度是不同的。
高度等于最上面一个像素减去最下面一个像素的高度。
所以,三者的高度是不同的。如何获取这三个高度呢?就是通过 paint.getTextBounds()方法。
String temp = "Happy"; //被获取的文字
Rect rect = new Rect();