當我在畫布上的頂部不同分辨率位圖上嘗試相同的文字大小時。相同的文字大小在更大的分辨率下看起來很小,在小分辨率的圖像上看起來更大請幫我理解這一點。在畫布上了解不同分辨率圖像上的文字大小android
0
A
回答
-1
這是你可以在所有設備中使所有文本統一大小的方式。
canvas.drawText(hourText, getPx(TEXT_SIZE, activity), getPx(TEXT_SIZE/3, activity), nPaint);
public static int getPx(int dp, Activity activity) {
DisplayMetrics metrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
float logicalDensity = metrics.density;
return (int) Math.ceil(dp * logicalDensity);
}
1
您需要設置正確的文本大小爲您Paint
,即佔密度。 Paint.setTextSize(float)
,收入浮動值。您需要確保這不是一個常數值,而是一個說明密度的值。
如何獲得密度?您從DisplayMetrics.scaledDensity
或DisplayMetrics.density
獲得該信息。獲得該值後,將其與fontSize相乘,並將該值設置爲文本大小。像下面的東西。
Paint.setTextSize(density * 10f);
這樣一個文本的10f
字體大小在不同密度的所有設備中看起來都是一樣的。你可以在這裏找到關於density
和scaledDensity
的更多信息:http://developer.android.com/reference/android/util/DisplayMetrics.html#scaledDensity
相關問題
- 1. 安卓:圖像分辨率的問題,同時在畫布上
- 2. 不同分辨率的文字大小
- 3. 在保存分辨率的畫布中調整圖像大小
- 4. 用更好的分辨率在畫布上繪畫? (Android)
- 5. Android:Canvas.drawText()在不同屏幕分辨率下的文字大小
- 6. 跨不同分辨率的圖像大小問題
- 7. 如何從較小的畫布獲得高分辨率圖像?
- 8. 更改System.Windows.Media.Imaging.ImageSource圖像大小/分辨率?
- 9. 調整圖像大小在畫布上
- 10. 針對不同分辨率的Android文本大小
- 11. Android的佈局不同分辨率
- 12. 調整大小上不同的屏幕分辨率
- 13. Android在不同分辨率下顯示不同的圖像
- 14. 如何修復android上的不同分辨率上的圖像textviews?
- 15. 如何在小分辨率上更改字體大小
- 16. 如何根據不同的分辨率調整android webview中的圖像大小?
- 17. Android的文字大小在編程上取決於分辨率或密度
- 18. 如何在相同的分辨率下繪製不同大小的圖像?
- 19. 在Android上的Web上的相同圖像的不同大小
- 20. 圖片在小分辨率屏幕上重疊文字
- 21. android在json數據的ImageView上顯示圖像(不同的屏幕分辨率)
- 22. 根據屏幕分辨率調整圖像的大小Android
- 23. Android:不同分辨率的屏幕上的位圖縮放
- 24. 在Android ICS virtualbox問題上更改分辨率(屏幕大小)
- 25. 在高分辨率圖像上畫一個形狀?
- 26. 畫布調整大小和改變索引圖像上的腳本 - 福瘸子的分辨率
- 27. 如何動態修復不同屏幕分辨率的文字大小Android
- 28. 在屏幕分辨率上調整字體大小
- 29. Python圖像庫調整大小時的圖像分辨率
- 30. 如何在不同分辨率下顯示相同的「比例」文字大小?
你應該使用dp作爲單位。 –
請參閱'android.util.TypedValue#applyDimension' – pskink