Foros del Web » Programación para mayores de 30 ;) » .NET »

Imprimir parte de Form

Estas en el tema de Imprimir parte de Form en el foro de .NET en Foros del Web. Hola tengo un aplicación en Winforms en la cual genero una especie de etiqueta, me gustaría poder tener un botón con el cual se exporte ...
  #1 (permalink)  
Antiguo 24/05/2011, 14:39
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 17 años, 10 meses
Puntos: 4
Imprimir parte de Form

Hola tengo un aplicación en Winforms en la cual genero una especie de etiqueta, me gustaría poder tener un botón con el cual se exporte a algún formato tipo jpg.

He revisado la web buscando alternativas y lo que encuentro siempre es exportar el contenido de una PictureBox a jpg, pero en mi caso no tengo la dicha PictureBox, habrá alguna otra alternativa?

Gracias por cualquier sugerencia.
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.
  #2 (permalink)  
Antiguo 24/05/2011, 15:15
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Imprimir parte de Form

Dicha etiqueta es parte del Form?, es decir, la generas directamente en el Form? porque hasta donde veo es mucho más sencillo mandar de un picturebox que tomar cierta parte del Form. Te tendrias que saber las coordenadas exactas de donde se encuentra tu etiqueta y quizás estar recorriendolo a nivel pixel.

Saludos!
__________________
http://ka0stj.wordpress.com/
  #3 (permalink)  
Antiguo 24/05/2011, 15:19
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 17 años, 10 meses
Puntos: 4
Respuesta: Imprimir parte de Form

Cita:
Iniciado por Ka0stj Ver Mensaje
Dicha etiqueta es parte del Form?, es decir, la generas directamente en el Form? porque hasta donde veo es mucho más sencillo mandar de un picturebox que tomar cierta parte del Form. Te tendrias que saber las coordenadas exactas de donde se encuentra tu etiqueta y quizás estar recorriendolo a nivel pixel.

Saludos!
Hola, mira lo que yo llamo etiqueta es un panel con algunas labels y textbox con datos obtenidos de la base de datos.
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.
  #4 (permalink)  
Antiguo 24/05/2011, 15:22
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Imprimir parte de Form

Ok, checa el siguiente enlace haber si te sirve:

http://social.msdn.microsoft.com/For...a-b48cf6ca6488
__________________
http://ka0stj.wordpress.com/
  #5 (permalink)  
Antiguo 25/05/2011, 11:33
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 17 años, 10 meses
Puntos: 4
Respuesta: Imprimir parte de Form

Cita:
Iniciado por Ka0stj Ver Mensaje
Ok, checa el siguiente enlace haber si te sirve:

http://social.msdn.microsoft.com/For...a-b48cf6ca6488
Ok con tu ayuda logre guardar el panel a jpg con el siguiente codigo:

Código:
Dim bmp As New Bitmap(Panel2.Width, Panel2.Height)
Panel2.DrawToBitmap(bmp, Panel2.ClientRectangle)

bmp.Save("panel.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)
Ahora estoy viendo la posibilidad de que el usuario seleccione la ruta y el formato en el cual guardar la foto.

Gracias.
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.
  #6 (permalink)  
Antiguo 25/05/2011, 11:57
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Imprimir parte de Form

podrias usar un SaveFileDialog como de esta manera :

Código c#:
Ver original
  1. SaveFileDialog1.Title = "Guardar Imagen En....";
  2.                 SaveFileDialog1.DefaultExt = "jpeg";
  3.                 SaveFileDialog1.Filter = "JPEG|*.jpeg|BITMAP|*.bmp|PNG|*.png|All Files|*.*";
  4.                 SaveFileDialog1.FilterIndex = 1;
  5.  
  6.                 if (SaveFileDialog1.ShowDialog() == DialogResult.OK)
  7.                 {
  8.                     if (SaveFileDialog1.FileName == "")
  9.                     {
  10.                         return;
  11.                     }
  12.                     //Obtengo la extension del archivo
  13.                     string strExt;
  14.                     strExt = System.IO.Path.GetExtension(SaveFileDialog1.FileName);
  15.  
  16.                     if (strExt == ".jpeg")
  17.                     {
  18.                         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Jpeg);
  19.                     }
  20.                     if (strExt == ".bmp")
  21.                     {
  22.                         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Bmp);
  23.                     }
  24.                     if (strExt == ".png")
  25.                     {
  26.                         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Png);
  27.                     }
  28.                     MessageBox.Show("Imagen Guardada Correctamente!\n* Ubicacion : " + SaveFileDialog1.FileName.toString() + "");
  29. }

Espero te haya dado una idea. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #7 (permalink)  
Antiguo 25/05/2011, 12:10
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Imprimir parte de Form

Puedes utilizar SaveFileDialog para indicar la ruta donde quieres guardar tu archivo, algo como lo siguiente:

Código vb:
Ver original
  1. Dim SFD As Windows.Forms.SaveFileDialog = New Windows.Forms.SaveFileDialog()
  2.         SFD.RestoreDirectory = True
  3.  
  4.         Dim _Path As String = String.Empty
  5.         Dim _Extension As String = ".jpg"
  6.  
  7.         If SFD.ShowDialog() = DialogResult.OK Then
  8.  
  9.             _Path = SFD.FileName
  10.  
  11.             '-- Aqui guardas tu imagén
  12.  
  13. End If

Saludos!
__________________
http://ka0stj.wordpress.com/
  #8 (permalink)  
Antiguo 25/05/2011, 13:01
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 17 años, 10 meses
Puntos: 4
Respuesta: Imprimir parte de Form

Cita:
Iniciado por Ka0stj Ver Mensaje
Puedes utilizar SaveFileDialog para indicar la ruta donde quieres guardar tu archivo, algo como lo siguiente:

Código vb:
Ver original
  1. Dim SFD As Windows.Forms.SaveFileDialog = New Windows.Forms.SaveFileDialog()
  2.         SFD.RestoreDirectory = True
  3.  
  4.         Dim _Path As String = String.Empty
  5.         Dim _Extension As String = ".jpg"
  6.  
  7.         If SFD.ShowDialog() = DialogResult.OK Then
  8.  
  9.             _Path = SFD.FileName
  10.  
  11.             '-- Aqui guardas tu imagén
  12.  
  13. End If

Saludos!
Gracias eso anda de lujo, lo único que cuando sale el savedialog no muestra abajo la extensión, imagino que debería venir seleccionado en jpg(aunque la graba bien)
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.
  #9 (permalink)  
Antiguo 25/05/2011, 13:06
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Imprimir parte de Form

en el codigo que te pase alli se indica como colocarle los filtros, es similar en vb.net solo chequea sus propiedades. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #10 (permalink)  
Antiguo 25/05/2011, 13:08
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Imprimir parte de Form

Mi Codigo de C# pasado a VB.net :

Código vb.net:
Ver original
  1. SaveFileDialog1.Title = "Guardar Imagen En...."
  2. SaveFileDialog1.DefaultExt = "jpeg"
  3. SaveFileDialog1.Filter = "JPEG|*.jpeg|BITMAP|*.bmp|PNG|*.png|All Files|*.*"
  4. SaveFileDialog1.FilterIndex = 1
  5.  
  6. If SaveFileDialog1.ShowDialog() = DialogResult.OK Then
  7.     If SaveFileDialog1.FileName = "" Then
  8.         Return
  9.     End If
  10.     'Obtengo la extension del archivo
  11.     Dim strExt As String
  12.     strExt = System.IO.Path.GetExtension(SaveFileDialog1.FileName)
  13.  
  14.     If strExt = ".jpeg" Then
  15.         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Jpeg)
  16.     End If
  17.     If strExt = ".bmp" Then
  18.         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Bmp)
  19.     End If
  20.     If strExt = ".png" Then
  21.         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Png)
  22.     End If
  23.     MessageBox.Show("Imagen Guardada Correctamente!" & vbLf & "* Ubicacion : " & SaveFileDialog1.FileName.toString() & "")
  24. End If
Pagina usada : Convertir c# a VB.NET. Saludos!..
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #11 (permalink)  
Antiguo 25/05/2011, 14:37
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 17 años, 10 meses
Puntos: 4
Respuesta: Imprimir parte de Form

Cita:
Iniciado por Aquaventus Ver Mensaje
Mi Codigo de C# pasado a VB.net :

Código vb.net:
Ver original
  1. SaveFileDialog1.Title = "Guardar Imagen En...."
  2. SaveFileDialog1.DefaultExt = "jpeg"
  3. SaveFileDialog1.Filter = "JPEG|*.jpeg|BITMAP|*.bmp|PNG|*.png|All Files|*.*"
  4. SaveFileDialog1.FilterIndex = 1
  5.  
  6. If SaveFileDialog1.ShowDialog() = DialogResult.OK Then
  7.     If SaveFileDialog1.FileName = "" Then
  8.         Return
  9.     End If
  10.     'Obtengo la extension del archivo
  11.     Dim strExt As String
  12.     strExt = System.IO.Path.GetExtension(SaveFileDialog1.FileName)
  13.  
  14.     If strExt = ".jpeg" Then
  15.         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Jpeg)
  16.     End If
  17.     If strExt = ".bmp" Then
  18.         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Bmp)
  19.     End If
  20.     If strExt = ".png" Then
  21.         bmp.Save(SaveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Png)
  22.     End If
  23.     MessageBox.Show("Imagen Guardada Correctamente!" & vbLf & "* Ubicacion : " & SaveFileDialog1.FileName.toString() & "")
  24. End If
Pagina usada : Convertir c# a VB.NET. Saludos!..
Que responden rápido, gracias me funciono a la perfección.
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.

Etiquetas: formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:05.