none
Imprimir con tamaño especifico en printdocument en vb.net

    Pregunta

  • hola buenas noches quiero saber como puedo visualizar en mi printdocument en un tamaño especifico A5,

    ya que solo me muestra la hoja en horizontal con este código

     

       PrintDocument1.DefaultPageSettings.Landscape = True

    y quisiera que este en tamaño A5, que vendría hacer la mitad de la hoja A4 o por ahí???


    dantexito

    viernes, 21 de octubre de 2016 0:12

Respuestas

  • Hola:

    En un Form con 1 Button, copia y pega el siguiente codigo

    Imports System.Drawing
    Imports System.Drawing.Printing
    Public Class Form1
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            Dim pd As New PrintDocument()
            AddHandler pd.PrintPage, New PrintPageEventHandler(AddressOf Me.PrintDocument_PrintPage)
            'Imprimir en tamaño de papel A5
            Dim name As String = "A5"
            Dim width As Integer = 830  'Ancho en Centesimas de pulgada
            Dim height As Integer = 580 'Alto en Centesimas de pulgada
            Dim TipoPapel As New PaperSize(name, width, height)
            pd.DefaultPageSettings.PaperSize = TipoPapel
            '
            Dim ppd As New PrintPreviewDialog()
            ppd.Document = pd
            ppd.ShowDialog()
        End Sub

        Private Sub PrintDocument_PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs)
            e.Graphics.DrawRectangle(Pens.Black, 50, 100, 50, 350)
            e.Graphics.DrawLine(Pens.Black, 150, 150, 250, 450)
        End Sub
    End Class

    Un saludo desde Bilbo
    Carlos
    sábado, 22 de octubre de 2016 7:36

Todas las respuestas

  • Hola:

            Dim name As String = "Prueba"
            Dim width As Integer = 100  'Ancho en Centesimas de pulgada
            Dim height As Integer = 200 'Alto en Centesimas de pulgada
            Dim TipoPapel As New PaperSize(name, width, height)
            '
            Dim pd As New PrintDocument()
            pd.DefaultPageSettings.PaperSize = TipoPapel

    Un saludo desde Bilbo
    Carlos

    viernes, 21 de octubre de 2016 8:20
  • No nada me imprime igual

    Private Sub PrintDocument1_PrintPage(sender As System.Object, e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage

            e.Graphics.DrawRectangle(Pens.Black, 100, 300, 650, 350)
            e.Graphics.DrawLine(Pens.Black, 100, 350, 750, 350)

    End Sub

    Private Sub PrintPreviewDialog1_Load(sender As System.Object, e As System.EventArgs) Handles PrintPreviewDialog1.Load
                '
            Dim name As String = "Prueba"
            Dim width As Integer = 210  'Ancho en Centesimas de pulgada
            Dim height As Integer = 148 'Alto en Centesimas de pulgada
            Dim TipoPapel As New PaperSize(name, width, height)

            Dim PrintDocument1 As New PrintDocument()
            PrintDocument1.DefaultPageSettings.PaperSize = TipoPapel


    dantexito

    sábado, 22 de octubre de 2016 4:24
  • Hola:
    Prueba esto


     Dim width As Integer = 830  'Ancho en Centesimas de pulgada
     Dim height As Integer = 580 'Alto en Centesimas de pulgada

    Un saludo desde Bilbo
    Carlos
    sábado, 22 de octubre de 2016 7:00
  • Hola:

    En un Form con 1 Button, copia y pega el siguiente codigo

    Imports System.Drawing
    Imports System.Drawing.Printing
    Public Class Form1
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            Dim pd As New PrintDocument()
            AddHandler pd.PrintPage, New PrintPageEventHandler(AddressOf Me.PrintDocument_PrintPage)
            'Imprimir en tamaño de papel A5
            Dim name As String = "A5"
            Dim width As Integer = 830  'Ancho en Centesimas de pulgada
            Dim height As Integer = 580 'Alto en Centesimas de pulgada
            Dim TipoPapel As New PaperSize(name, width, height)
            pd.DefaultPageSettings.PaperSize = TipoPapel
            '
            Dim ppd As New PrintPreviewDialog()
            ppd.Document = pd
            ppd.ShowDialog()
        End Sub

        Private Sub PrintDocument_PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs)
            e.Graphics.DrawRectangle(Pens.Black, 50, 100, 50, 350)
            e.Graphics.DrawLine(Pens.Black, 150, 150, 250, 450)
        End Sub
    End Class

    Un saludo desde Bilbo
    Carlos
    sábado, 22 de octubre de 2016 7:36