Problemas de calidad de mapa de bits Android

En mi aplicación, el mapa de bits se dibuja como si el color es un tipo de calidad inferior. Si cargue la imagen de fondo utilizando la aplicación de la galería, se carga muy bien y no parece que es de calidad súper baja. El código que estoy utilizando para cargar y dibujar mis imágenes es simple:

//Code for initializing the Bitmap Bitmap bitmap = Bitmap.createScaledBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.none), (int) (canvas.getWidth() * compression), (int) (canvas.getHeight() * compression), true); //... //Code for drawing this Bitmap canvas.drawBitmap(bitmap, null, new RectF(0, 0, canvas.getWidth(), canvas.getHeight()), null); 

Si nada en el código te dice lo que está mal, hice una imagen comparando lo que realmente se veía en la imagen de una computadora u otro visor de imágenes y cómo se veía en la aplicación. La imagen superior es la aplicación en el teléfono, imagen inferior es lo que la imagen de fondo en realidad se parece. Observe las líneas en la imagen superior. ¿Qué pasa con eso?

La pregunta es algo similar a la mala calidad de imagen después de cambiar el tamaño / escala de mapa de bits

Intente deshabilitar la escala, vuelva a clasificar según el tamaño en un mapa de bits fuera de pantalla y asegúrese de que Bitmap es 32 bits (ARGB888):

 Options options = new BitmapFactory.Options(); options.inScaled = false; options.inDither = false; options.inPreferredConfig = Bitmap.Config.ARGB_8888; Bitmap source = BitmapFactory.decodeResource(a.getResources(), path, options); 

Otra respuesta buena y completa sobre el escalado / procesamiento de la imagen se puede encontrar en Problemas de calidad al cambiar el tamaño de una imagen en tiempo de ejecución

  • Cómo obtener bitmap (frames) de video usando MediaCodec
  • Excepción en unbindDrawables
  • Cómo establecer un mapa de bits de recurso
  • ¿Cómo subir varios archivos de imagen en el servidor?
  • View.getDrawingCache () sólo funciona una vez
  • Cargar muchas imágenes de mapa de bits grandes como miniaturas - Android
  • Cómo obtener todo el mapa de bits adjunto a un ImageView?
  • ¿Puedo crear Bitmaps con el Android NDK en C ++ y pasarlos a Java muy rápido?
  • Decodificar una parte de Bitmap del archivo en Android
  • Cómo evitar createBitmap () bloqueo en android
  • Cómo codificar Bitmaps en un video usando MediaCodec?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.