Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



lunes, 1 de septiembre de 2014

Gambas3: Guardar lo dibujado en un drawingArea en un archivo tipo .png

Guardar lo dibujado en un DrawingArea 

en un archivo tipo .png

Hemos visto como podemos dibujar en un drawingArea, pero una de las cosas que se nos pueden plantear es guardar lo que hemos hecho.

Para hacerlo se siguen los siguientes pasos usando el método .begin de la clase Paint:
- creamos una imagen de las mismas dimensiones que el drawingarea que contiene el dibujo

  • fichero = New Picture(drawingArea1.w, drawingArea1.h, Color.Transparent) 

- Usamos el método .begin de la clase pain indicandole la imagen donde vamos a guardar el dibujo.

  •  Paint.begin(fichero)

- Llamamos a la subrutina que hace el dibujo

  • dibujar()

-Terminamos de dibujar

  • Paint.end

-Salvamos el dibujo en un archivo:

  • fichero.save(user.home & "/" & "pruebas.png")


Ejemplo Completo:
Vamos a dibujar un rectangulo, una imagen y un texto en un drawingarea:
El contenido del drawingArea lo vamos a guardar en el fichero "pruebas", en el directorio del usuario. Además queremos darle la opción al usuario que guarde el fondo transparente o relleno en el color blanco (color.white).

Así sería el código:

-
-

El resultado


Enlace de descarga del ejemplo completo: enlace a box.com