System.Drawing.Bitmap b = new System.Drawing.Bitmap(200,200);
System.Drawing.Graphics g = Graphics.FromImage(b);
g.DrawString("hola",new System.Drawing.Font("Arial",20),System.Drawing.Brushes.Red,new System.Drawing.Rectangle(0,0,100,100));
b.Save("c:\\borrame.jpg",System.Drawing.Imaging.ImageFormat.Jpeg);
b.Dispose();
2 comentarios:
Buenas. Yo lo he hecho parecido por mi cuenta. pero tengo que cerrar la aplicación para abrir la imagen. No se que control es el que lo sigue usando y como liberarlo. Tal vez me puedas ayudar. c_generico es un Chart donde tengo graficado unas estadisticas que intento guardar en la imagen. Lo hace todo pero me queda algo usando la imagen que guardo.
using (System.Drawing.Bitmap ImagenPanel = new Bitmap(c_generico.Width, c_generico.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb))
{
using (System.IO.MemoryStream STREAM = new System.IO.MemoryStream())
{
c_generico.DrawToBitmap(ImagenPanel, new Rectangle(0, 0, p_interiorIzquierdo.Width, p_interiorIzquierdo.Height));
using (SaveFileDialog frm = new SaveFileDialog())
{
frm.Filter = "JPeg Image|*.jpg|Bitmap Image|*.bmp";
frm.Title = "Guardar imagen";
frm.FileName = "Nueva Imagen";
frm.ShowDialog();
if (frm.FileName != null)
ImagenPanel.Save(frm.OpenFile(), System.Drawing.Imaging.ImageFormat.Bmp);
STREAM.Close();
ImagenPanel.Dispose();
}
}
}
todo esto en un evento click de boton
Lo siento. Por no ver el correo del comentario hasta ahora, y por no poder ayudarte.
No veo el problema. Quizá esté en otro sitio.
De hecho ...
STREAM.Close();
ImagenPanel.Dispose();
... deberían ser redundantes.
Despues del los using el fichero debería estar accesible.
Espero que ya lo hayas solucionado.
Un saludo
Publicar un comentario