Столкнулся с одной интересной особенностью: размеры Bitmap при вызове getWidth() и getHeight() возвращаются реальные, т.е. сколько пикселей само изображение, загруженное под соответствующее DPI. Однако выводится, например, на Canvas при drawBitmap масштабированное изображение под соответствующий density. Таким образом, правильней писать в некоторых случаях так:
Соответственно, можно вместо density самого Bitmap-а брать DPI, например, всего экрана через DisplayMetrics и т.д.
Такой вот простенький трик. Возможно, говорю о крайне банальных вещах, но я дошел до этого не сразу.
int height,width; Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.resource_name); height = bmp.getScaledHeight(bmp.getDensity()); width = bmp.getScaledWidth(bmp.getDensity());
Соответственно, можно вместо density самого Bitmap-а брать DPI, например, всего экрана через DisplayMetrics и т.д.
Такой вот простенький трик. Возможно, говорю о крайне банальных вещах, но я дошел до этого не сразу.
Комментариев нет:
Отправить комментарий