Cómo dibujar en Bitmap en android?
Estoy tratando de averiguar cómo dibujar en un mapa de bits en android, y mantener una copia de estos bitmaps cambiado para una función de deshacer.
Bitmap b = ... Paint p = new Paint(); canvas.drawBitmap(b, new Matrix(), null); canvas.drawCircle(0,0,20,20); //does Bitmap b have the circle drawn on it next time?
¿O cómo obtengo el mapa de bits después de haber sido dibujado con el lienzo (Quiero conservar una pila de mapas de bits con los cambios aplicados por el dibujo de lienzo)? Tal vez estoy haciendo esto totalmente mal.
- Obtenga todos los iconos de aplicaciones instalados en Android: java.lang.ClassCastException
- Recorte de mapa de bits
- Utilizar Picasso para obtener una devolución de llamada con un mapa de bits
- ¿Cómo crear un ángulo parcialmente redondeado-curvas rectangulares con centro de cultivo y sin crear nuevo mapa de bits?
- BitmapFactory.Options da 0 ancho y altura
- ¿Es un Bitmap inmutable más rápido que un mutable?
- Asignación de mapa de bits, utilizando BitmapFactory.Options.inBitmap arroja IllegalArgumentException
- Manejo de mapas de bits grandes
- Tela que intenta utilizar un mapa de bits reciclado
- Cómo cambiar el tamaño del mapa de bits después de capturar la imagen a través de mi aplicación
- Gire un ImageView en sentido horario usando ObjectAnimator
- ¿Puedo crear Bitmaps con el Android NDK en C ++ y pasarlos a Java muy rápido?
- Cómo guardar la imagen a través de la captura en android a php?
Utilice una new Canvas(Bitmap bitmap)
para proporcionar un Canvas
con un Bitmap
que contendrá el resultado de las operaciones de dibujo.
El Bitmap
original que dibuje en su Canvas
con drawBitmap
nunca se modificará.
Después de cada operación realizada por el usuario, puede:
- Mantener en la memoria una lista de las operaciones realizadas
- Guardar los resultados intermedios en el almacenamiento externo con Bitmap.compress
Otra aproximación podría ser usar un LayerDrawable
para apilar sucesivas operaciones de dibujo una encima de la otra. Se puede imaginar que permite al usuario desactivar cada operación individual realizada.
Puedes ver la guía completa de cómo dibujar el texto aquí:
https://www.skoumal.net/es/android-how-draw-text-bitmap/
Larga historia corta:
Copie su mapa de bits para que sea mutable y crear lienzos basados en él.
- Android OpenGL ES Soporte en todas partes?
- ¿Cómo cambiar el tamaño de la fuente y el color de la fuente de un archivo Java?