Articles of bitmapfactory

Сохранение холста в растровое изображение на Android

У меня возникли трудности с размещением содержимого Canvas в Bitmap. Когда я пытаюсь это сделать, файл записывается с размером файла около 5,80 КБ, но он кажется совершенно пустым (каждый пиксель «# 000»). Холст рисует ряд взаимосвязанных линий, образованных почерком. Ниже мой onDraw для просмотра. (Я знаю, что он блокирует поток пользовательских интерфейсов / неправильные методы […]

BitmapFactory возвращает большее изображение, чем источник

Привет, я создаю растровое изображение из png-изображения с именем image.png . Изображение имеет размер 75 (ширина) x 92 (высота). Когда я запускаю этот код: Bitmap bitmap = BitmapFactory.decodeResource(this.context.getResources(), R.drawable.image Log.d("image", "height: " + bitmap.getHeight() + " width: " + bitmap.getWidth()); Журналы регистрации: DEBUG/image(3550): height: 138 width: 113 И изображение на экране больше, чем другие изображения […]

Потеря прозрачного фона при загрузке внешнего изображения PNG

Я показываю внешнее изображение в представлении изображения, загружая его так: bitmap = BitmapFactory.decodeStream((InputStream)new URL(url).getContent()); Затем установите это растровое изображение в ImageView следующим образом: imageView.setImageBitmap(bitmap); Это хорошо работает, за исключением того, что одно из изображений – это PNG, и я теряю прозрачный фон при использовании BitmapFactory . Может ли кто-нибудь сказать мне, как я могу сохранить […]

Размер MediaStyle LargeIcon

Я внедряю уведомление в стиле Lollipop для приложения потокового музыкального проигрывателя FTP, используя новый класс Notification.MediaStyle. Я устанавливаю обложку альбома как «большой значок». Учитывая, что обложка альбома берется непосредственно из воспроизводимого файла, размер этого альбома меняется в зависимости от источника (возможно, до 5000х5000). Из моего кода pre-lollipop я декодирую растровое изображение под максимальным размером, определяемым: […]

BitmapFactory.decodeResource и необъяснимый недостающий объем памяти

Я получаю странную ошибку нехватки памяти, декодирующую ресурс рисованного изображения 960x926px jpg, выделяя 3555856 байт. Изображение размещено только в drawable-xxhdpi (3x), и я использую устройство hdpi (1.5x). Два вопроса: Почему я получаю ошибку, хотя у меня достаточно свободной памяти в куче? Выделение для устройства hdpi должно быть ((960/2) x (926/2)) x 4 = 888960 байт […]

Android – calculateInSampleSize, почему Math.round справляется с высотой (height / reqHeight), когда ширина> высота?

Я смотрю на «developer.android.com», чтобы уменьшить мой растровый файл, и я нашел одно, чего я не понимаю. Поэтому я ценю, что вы мне немного поможете. Вот фрагмент от developer.android.com public static int calculateInSampleSize( BitmapFactory.Options options, int reqWidth, int reqHeight) { // Raw height and width of image final int height = options.outHeight; final int width […]

BitmapFactory.decodeStream возвращает null без исключения

Я пытаюсь загрузить удаленное изображение с сервера, и благодаря большому количеству примеров кода в stackoverflow у меня есть решение, которое работает в 2 из 3 изображений. Я действительно не знаю, в чем проблема с третьим изображением, а иногда, когда код запускается в отладчике, загружается изображение. Также, если я загружаю изображение проблемы сначала, другие два изображения […]

Отображение изображений из определенной папки на SD-карте с использованием gridview

Я пытаюсь создать gridview, который загружается изображениями из определенной папки, которая находится на SDCard. Путь к папке известен («/ sdcard / pictures»), но в примерах, которые я видел в Интернете, я не знаю, как и где указать путь к папке с фотографиями, с которой я хочу загрузить изображения. Я прочитал десятки учебных пособий, даже учебник […]

Android: Прозрачность PNG не работает с BitmapFactory.decodeStream (…) и папкой с активами

Я использую следующий метод, чтобы вытащить PNG-файл из папки активов в приложении для Android: public static Bitmap getBitmapFromAssets(Context context, String fileName) { try { AssetManager assetManager = context.getAssets(); InputStream inputStream = assetManager.open(fileName); Bitmap bitmap = BitmapFactory.decodeStream(inputStream); return bitmap; } catch(Exception ex) { ex.printStackTrace(); return null; } } Затем я устанавливаю источник ImageView в элементе GridView […]

Как указать формат растрового изображения (например, RGBA_8888) с помощью BitmapFactory.decode * ()?

Я делаю несколько звонков в BitmapFactory.decodeFile() и BitmapFactory.decodeResource() , и я хотел бы указать формат, который декодируют растровые изображения, например RGB_565 или RGBA_8888. В настоящее время формат декодированного растрового изображения, по-видимому, зависит от входящего изображения. Альтернативно, есть ли способ конвертировать существующее растровое изображение в конкретный формат? Причина, по которой это важно, заключается в том, что […]