Cómo pintar en un bitmap para luego guardarlo en disco

16/01/2006 - 15:28 por Zephryn Xirdal | Informe spam
Hola a todos.

A ver, que hoy estoy algo espeso.

Necesito pintar en un bitmap y luego el resultado guardarlo en disco, sin
pasar para nada por pantalla.

El concepto lo tengo claro: creo un bitmap, obtengo un dc de él y pinto.
Cuando he terminado, pues guardo el bitmap a disco.

El problema es que no encuentro la forma de hacerlo, ni en los libros que
tengo ni en la MSDN, y seguro que está con letras bien grandes.

Hasta ahora he creado un Bitmap con las dimensiones y profundidad de color
deseadas, pero en él sólo puedo pintar pixel a pixel. Lo que no sé es cómo
obtener un DC de él para pintar texto, etc tal y como se hace en un
control visual.

Una solución sucia sería crear un control cualquiera (p.ej. un panel) pero
no visible y pintar sobre él, pero me gustaría hacerlo bien.

A ver si alguien me apunta algo.

Gracias.

El casco del Titanic fue diseñado con Windows 95.

Powered by zxFortune. It's Free.
http://sourceforge.net/projects/zxfortune

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
17/01/2006 - 10:04 | Informe spam
Hola, Zephryn!

Usa el método Graphics.FromImage( bmp) para obtener el "contexto" a partir
de la imagen.
Echa un vistazo a este proyecto:

http://www.codeproject.com/aspnet/D...tImage.asp

Si lo que quieres es dibujar un control CAPTCHA en una página web, hay un
componente muy bueno con fuente incluido en la dotNetManía de diciembre.

Salu2 - Octavio

"Zephryn Xirdal" escribió en el mensaje
news:
Hola a todos.

A ver, que hoy estoy algo espeso.

Necesito pintar en un bitmap y luego el resultado guardarlo en disco, sin
pasar para nada por pantalla.

El concepto lo tengo claro: creo un bitmap, obtengo un dc de él y pinto.
Cuando he terminado, pues guardo el bitmap a disco.

El problema es que no encuentro la forma de hacerlo, ni en los libros que
tengo ni en la MSDN, y seguro que está con letras bien grandes.

Hasta ahora he creado un Bitmap con las dimensiones y profundidad de color
deseadas, pero en él sólo puedo pintar pixel a pixel. Lo que no sé es cómo
obtener un DC de él para pintar texto, etc tal y como se hace en un
control visual.

Una solución sucia sería crear un control cualquiera (p.ej. un panel) pero
no visible y pintar sobre él, pero me gustaría hacerlo bien.

A ver si alguien me apunta algo.

Gracias.

El casco del Titanic fue diseñado con Windows 95.

Powered by zxFortune. It's Free.
http://sourceforge.net/projects/zxfortune
Respuesta Responder a este mensaje
#2 Zephryn Xirdal
17/01/2006 - 12:11 | Informe spam
On Tue, 17 Jan 2006 10:04:17 +0100, Octavio Hernandez
wrote:

Hola, Zephryn!




Muy benas.

Usa el método Graphics.FromImage( bmp) para obtener el "contexto" a
partir
de la imagen.



Eso era. Gracias. Lo que yo decía: espeso, espeso estoy. Si es un elefante
me pisa.

Echa un vistazo a este proyecto:

http://www.codeproject.com/aspnet/D...tImage.asp

Si lo que quieres es dibujar un control CAPTCHA en una página web, hay un
componente muy bueno con fuente incluido en la dotNetManía de diciembre.




Nada, todo es local. Gracias de todos modos.

Salu2 - Octavio

"Zephryn Xirdal" escribió en el
mensaje
news:
Hola a todos.

A ver, que hoy estoy algo espeso.

Necesito pintar en un bitmap y luego el resultado guardarlo en disco, sin
pasar para nada por pantalla.

El concepto lo tengo claro: creo un bitmap, obtengo un dc de él y pinto.
Cuando he terminado, pues guardo el bitmap a disco.

El problema es que no encuentro la forma de hacerlo, ni en los libros que
tengo ni en la MSDN, y seguro que está con letras bien grandes.

Hasta ahora he creado un Bitmap con las dimensiones y profundidad de
color
deseadas, pero en él sólo puedo pintar pixel a pixel. Lo que no sé es
cómo
obtener un DC de él para pintar texto, etc tal y como se hace en un
control visual.

Una solución sucia sería crear un control cualquiera (p.ej. un panel)
pero
no visible y pintar sobre él, pero me gustaría hacerlo bien.

A ver si alguien me apunta algo.

Gracias.






La mejor crítica es la que no responde a la voluntad de ofensa, sino a la
libertad de juicio.
-
Powered by zxFortune. It's Free.
http://sourceforge.net/projects/zxfortune
Respuesta Responder a este mensaje
#3 Zephryn Xirdal
17/01/2006 - 12:28 | Informe spam
Ahora resulta que no se puede pintar sobre 8 bits indexado. En fin.

On Tue, 17 Jan 2006 12:11:04 +0100, Zephryn Xirdal
wrote:

On Tue, 17 Jan 2006 10:04:17 +0100, Octavio Hernandez
wrote:

Hola, Zephryn!




Muy benas.

Usa el método Graphics.FromImage( bmp) para obtener el "contexto" a
partir
de la imagen.



Eso era. Gracias. Lo que yo decía: espeso, espeso estoy. Si es un
elefante me pisa.

Echa un vistazo a este proyecto:

http://www.codeproject.com/aspnet/D...tImage.asp

Si lo que quieres es dibujar un control CAPTCHA en una página web, hay
un
componente muy bueno con fuente incluido en la dotNetManía de diciembre.




Nada, todo es local. Gracias de todos modos.

Salu2 - Octavio

"Zephryn Xirdal" escribió en el
mensaje
news:
Hola a todos.

A ver, que hoy estoy algo espeso.

Necesito pintar en un bitmap y luego el resultado guardarlo en disco,
sin
pasar para nada por pantalla.

El concepto lo tengo claro: creo un bitmap, obtengo un dc de él y pinto.
Cuando he terminado, pues guardo el bitmap a disco.

El problema es que no encuentro la forma de hacerlo, ni en los libros
que
tengo ni en la MSDN, y seguro que está con letras bien grandes.

Hasta ahora he creado un Bitmap con las dimensiones y profundidad de
color
deseadas, pero en él sólo puedo pintar pixel a pixel. Lo que no sé es
cómo
obtener un DC de él para pintar texto, etc tal y como se hace en un
control visual.

Una solución sucia sería crear un control cualquiera (p.ej. un panel)
pero
no visible y pintar sobre él, pero me gustaría hacerlo bien.

A ver si alguien me apunta algo.

Gracias.











La mejor crítica es la que no responde a la voluntad de ofensa, sino a la
libertad de juicio.
-
Powered by zxFortune. It's Free.
http://sourceforge.net/projects/zxfortune
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida