0

所以我得到了这个字体,必须在我的应用程序中以 9 pt 的大小使用。这就是我的设计师,一个安卓文盲,告诉我的。没问题:

9 pt = (1 / 72) * 9 = 1 / 8 in.

@ 285 dpi, this means 9 pt = 285/8 px

Being xhdpi, 9 pt = 285 / 16 dp.

整洁的!现在如何将此值转换为 sp 以便我可以将其提供给标题中的方法?

谢谢

4

1 回答 1

1

它没有在文档中指定,但我相当肯定Paint.setTextSize()接受像素值,而不是 sp 值,在这种情况下,您只需传入像素尺寸 (285/8)。问题是试图得到你的确切密度,据我所知,这是不可能的。您将不得不使用您的密度“桶”值(例如 hdpi = 240)。

编辑:如果你真的在谈论,TextView.setTextSize()那么你实际上可以使用setTextSize(TypedValue.COMPLEX_UNIT_PT, 9)并跳过整个转换问题。

于 2012-08-30T21:44:42.727 回答