Привет, ребята, я пытаюсь реализовать Converting bitmap to byteArray android. Мне нужно преобразовать мой байт [] в растровое изображение без сжатия. Но каждый раз, когда я получаю весь черный образ? Есть идеи, как это сделать? Что им делатьБайт-массив для преобразования растровых изображений
int bytes = bmp.getByteCount();
ByteBuffer buffer = ByteBuffer.allocate(bytes);
bmp.copyPixelsToBuffer(buffer);
byte[] resarray = buffer.array();
А вот как я получить его в растровый
BitmapFactory.Options options = new
BitmapFactory.Options();
options.inScaled = false;
Bitmap bmp = BitmapFactory.decodeByteArray(barray,0, barray.length,options);
ImageView imageView = (ImageView) findViewById(R.id.resdetayimage);
imageView.setImageBitmap(bmp);`
EDIT Bitmap заводского декодировании только сжатые вещи. Вот почему мой код не работает. Так что мне нужно что-то вроде.
Bitmap.Config configBmp = Bitmap.Config.valueOf(bitmap.getConfig().name());
Bitmap bitmap_tmp = Bitmap.createBitmap(width, height, configBmp);
ByteBuffer buffer = ByteBuffer.wrap(byteArray);
bitmap_tmp.copyPixelsFromBuffer(buffer);
но код все еще не работает. Итак, как я могу реализовать это? Я получил байт [] от намерения.
Я уверен, но вы можете попробовать создать растровое изображение i.e Bitmap X = Bitmap.createBitmap (resarray, bmp.getWidth(), bmp.getHeight(), bmpgetConfig()); – dex
Вы должны сделать обратную сторону copyPixelsToBuffer(). Итак, есть ли пиксели чтения из буфера или что-то в этом роде? DecodeByteArray ожидает файл jpg в этом массиве. Не пиксели. Я думаю, что теперь он возвращает null. Пожалуйста, проверьте. Так что не «черное изображение». – greenapps
Его не возвращающий нуль уже проверен –