理解canvas

时间:2015-11-16 06:39:59

标签: android text android-canvas

当我在画布上的顶部不同分辨率位图上尝试相同的文本大小时。相同的文本大小在较大分辨率上看起来很小,在小分辨率图像上看起来更大。请帮助我理解这一点。

2 个答案:

答案 0 :(得分:1)

您需要为Paint设置适当的文字大小,以考虑密度。 Paint.setTextSize(float),接受浮点值。您需要确保这不是一个常数值,而是一个考虑密度的值。

如何获得密度?您可以从DisplayMetrics.scaledDensityDisplayMetrics.density获取该信息。获得此值后,将其与fontSize相乘并将该值设置为文本大小。像下面的东西。

 Paint.setTextSize(density * 10f);

这样,具有10f字体大小的文本在具有不同密度的所有设备中看起来都相同。您可以在此处找到有关densityscaledDensity的更多信息:http://developer.android.com/reference/android/util/DisplayMetrics.html#scaledDensity

答案 1 :(得分:-1)

这样您就可以在所有设备中使所有文本统一大小。

randIdx = [2] strlen = [6]