Cambiar la profundidad de bits de Bitmap

Así que tengo una imagen con una profundidad de 32 bits, pero cuando lo hago en una gota para mi base de datos SQLite, y leerlo de nuevo con el siguiente código sólo tiene una profundidad de 24 bits (la calidad es más baja, quiero que Ser la misma calidad). ¿Cómo puedo conseguir que sea de 32 bits de profundidad? :

DatabaseHandler db = new DatabaseHandler(camera.this); List<Database> contacts = db.getAllContacts(); for (Database contact : contacts) { BitmapFactory.Options bmpFactoryOptions = new BitmapFactory.Options(); bmpFactoryOptions.inPreferredConfig = Bitmap.Config.ARGB_8888; //bmpFactoryOptions.inScaled = false; bmpFactoryOptions.outHeight = 240; bmpFactoryOptions.outWidth = 320; // decodes the blob back into a bitmap byte[] blob = contact.getMP(); ByteArrayInputStream inputStream = new ByteArrayInputStream(blob); Bitmap bitmap = BitmapFactory.decodeStream(inputStream); Bitmap scalen = Bitmap.createScaledBitmap(bitmap, 320, 240, false); 

El origen de codificación es

 Bitmap image15 = BitmapFactory.decodeResource(getResources(),R.drawable.wolverineklein); // convert bitmap to byte ByteArrayOutputStream stream = new ByteArrayOutputStream(); image15.compress(Bitmap.CompressFormat.JPEG, 100, stream); byte imageInByte1[] = stream.toByteArray(); 

Izquierda son las propiedades de la imagen de entrada (profundidad de 32 bits) y la derecha es la imagen de salida (profundidad de 24 bits)

One Solution collect form web for “Cambiar la profundidad de bits de Bitmap”

No hay tal cosa como 24 bits de profundidad en Android. Un mapa de bits puede ser de 8 bits (formato de translucidez de formato ALPHA 8 o configuración nula para formatos con paleta), 16 bits (formato RGB 565 sin translucidez o 4444 formato RGBA con translucidez) o 32 bits (formato 8888 RGBA con translucidez).

Actualización : Esto significa que no tienes un canal alfa. Los colores se codifican utilizando 24 bits en ambos casos.

  • Base de datos de SQLite Android eliminada después de desinstalar
  • Examinar la base de datos SQLite de mi aplicación para Android?
  • Cursor.moveToNext () devuelve false mientras Cursor.getCount () dice que son más de 1 fila
  • ¿Es la operación costosa de SQLite cursor.getCount en Android
  • Cómo agregar fecha en la base de datos sqlite
  • Usar swagger con una base de datos de android
  • Sync SQLite / tabla de base de datos de Android a la tabla de base de datos MySQL remoto (a través de PHP)
  • Cómo hacer frente a múltiples cambios en la versión de la base de datos cuando se actualiza la aplicación Android
  • Sqlite base de datos en el idioma persa
  • Android cifrar / descifrar sqlite base de datos 100% seguro
  • Almacenamiento y recuperación de datos no ingleses en la base de datos sqlite en android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.