Intereting Posts
Как создать эмулятор предварительного просмотра Android-M? JNI Android – Преобразование char * в массив байтов и возврат его в java Жизненный цикл активности Android: onStart () -> onStop () возможно? AutoCompleteTextView обнаруживает, когда выбранная запись из списка редактируется пользователем Когда заканчиваются токены GCM и что такое идентификатор экземпляра? Документы или руководства по android.graphics.Camera и android.graphics.Matrix? Проблемы с рендерингом при изменении темы Android для перевода на арабский Как создать настраиваемый диалог оповещений с видом сетки в андроиде? Есть ли способ правильно загрузить результат загрузки с помощью HttpUrlConncetion Синхронная и асинхронная деятельность Android TextureView задает цвет фона и покажет видео позже Не удалось найти текущее местоположение внутри фрагмента Ошибка конструкторов без значения по умолчанию в фрагментах Как создать элементарный поток AAC ADTS с Android MediaCodec

Разница между методами масштабирования растрового изображения

Существует как минимум два метода масштабирования растрового изображения в Android, один – использовать «inScaled, inDensity, inTargetDensity» в «BitmapFactory.Options» при декодировании растрового источника. Другой – использовать «Матрицу» в «Bitmap.createBitmap».

Что мне интересно, какова разница между этими двумя методами? Как насчет качества произведенного растрового изображения? А как насчет использования памяти? и т.д…

Solutions Collecting From Web of "Разница между методами масштабирования растрового изображения"

Использование BitmapFactory с соответствующими параметрами inScale позволит вам быть более эффективными с точки Bitmap.createScaledBitmap() памяти, чем использование Bitmap.createScaledBitmap() или Bitmap.createBitmap() с матричной шкалой. Однако это сложнее.

Как я могу масштабировать потоковое растровое изображение на месте, не читая сначала все изображение? Для деталей.

Одно из отличий, которое я обнаружил, заключается в том, что использование растровых изображений BitmapFactory's.inSampleSize для масштабирования не так гранулярно, потому что масштаб будет 1 / inSampleSize, а поскольку inSampleSize должен быть целым числом, вы заканчиваете масштабирование, как 1/2, 1/3, 1/4 и т. Д., Но ничего более гранулированного.

Bitmap.createScaledBitmap() , хотя и имеет большую интенсивность памяти, обеспечивает более гранулированное масштабирование, разрешение до 1dp.

Нет «большой» разницы. Хотя, одним из преимуществ использования BitmapFactory.Options является то, что вы можете проверить ширину / высоту вашего Bitmap без выделения памяти для фактических пикселей Bitmap .

Кроме того, вы можете легко увидеть, какие параметры BitmapFactory.Options имеют и сравнивают их с Bitmap.createBitmap() . В общем, BitmapFactory.Options похож на «инструмент» API для упрощения декодирования и выборки Bitmap .