Error con setPixels
Estoy tratando de editar imágenes. Pero estoy recibiendo errores con setPixels.
picw = pic.getWidth(); pich = pic.getHeight(); picsize = picw*pich; int[] pix = new int [picsize]; pic.getPixels(pix, 0, picw, 0, 0, picw, pich); pic.setPixels(pix,0,pic.getWidth(),0,0,pic.getWidth(),pic.getHeight());
Pero estoy recibiendo excepción de estado ilegal con setPixels
- Android jpeg pictureCallback en escala de grises Opencv Mat
- Android: BitmapFactory.decodeByteArray ofrece bitmap pixelado
- Procesamiento de datos de la vista previa de la cámara con Android L y Camera2 API
- ¿Cuál es la mejor manera de serializar una imagen (compatible con Swing) de Java a Android?
- Cómo configurar la imagen de salida use com.android.camera.action.CROP
Caused by: java.lang.IllegalStateException at android.graphics.Bitmap.setPixels(Bitmap.java:878) at com.sandyapps.testapp.testapp.onCreate(testapp.java:66)
- Utilizando el array de bytes de la cámara en bruto para la realidad aumentada
- Encuentra color dominante en un marco de cámara en OpenCV Android
- ¿Cómo puedo crear efectos de fotos en Android?
- Android cómo hacer la diapositiva de pantalla de imagen?
- Cómo obtener el objeto Mat desde el byte en openCV android?
- Cambiar el color de un objeto en una aplicación de Android
- Android Asynctask para procesar tramas de video en vivo
- Filtro esférico en android
Creo que su Bitmap
no es mutable (consulte la documentación de setPixel () ).
Si es así, crea una copia mutable de este Bitmap (usando Bitmap.copy(Bitmap.Config config, boolean isMutable)
como ejemplo) y trabaja en éste.
Probablemente su pic
es inmutable. De forma predeterminada, cualquier mapa de bits creado a partir de dibujable sería inmutable.
Si necesita modificar un mapa de bits existente, debe hacer lo siguiente:
// Create a bitmap of the same size Bitmap newBmp = Bitmap.createBitmap(pic.getWidth(), pic.getHeight(), Config.ARGB); // Create a canvas for new bitmap Canvas c = new Canvas(newBmp); // Draw your old bitmap on it. c.drawBitmap(pic, 0, 0, new Paint());
- Cambiar tamaño de fuente en ListView – Android / Eclipse
- Configuración del proxy del emulador de Android