【发布时间】:2011-02-24 07:07:16
【问题描述】:
我正在使用 Canvas.drawText() 在自定义视图上编写文本。 我想在文本后面添加一个背景 9-patch drawable,所以我需要知道绘制的文本的边界。 文本由用户给出,因此它不是固定大小。
现在我使用的是等宽字体,并且我设法构建了一个看起来不错的大小,但在手中我宁愿使用另一种字体。
【问题讨论】:
我正在使用 Canvas.drawText() 在自定义视图上编写文本。 我想在文本后面添加一个背景 9-patch drawable,所以我需要知道绘制的文本的边界。 文本由用户给出,因此它不是固定大小。
现在我使用的是等宽字体,并且我设法构建了一个看起来不错的大小,但在手中我宁愿使用另一种字体。
【问题讨论】:
您可以使用 Paint 的public void getTextBounds(String text, int start, int end, Rect bounds) 方法来获得一个包含所有文本的矩形。看看getTextBounds。
希望这会有所帮助!
【讨论】:
【讨论】:
我认为getTextBounds(String text, int start, int end, Rect bounds)可以为你做到。
这个方法属于Paint类:
【讨论】: