[VB.net] Printen van afbeelding

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Best Tweakers,

Ik wil een afbeelding als bestand of een afbeelding in een picturebox kunnen af printen zonder dat er een ander programma geopend wordt. Ik heb er al een tijdje naar gezocht maar kon niets vinden dat aan deze eisen voldoet. Hieronder staat het stuk code dat ik nu heb maar OneNote opend als ik op afdrukken klik.

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 Dim WithEvents PD As New Printing.PrintDocument
Private Sub BeginGraphicPrint_Click(ByVal sender As System.Object, _
              ByVal e As System.EventArgs) Handles BtnPrint.Click

        PD.Print()
End Sub

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

        e.Graphics.DrawImage(PictureBox1.Image, e.MarginBounds.Left, e.MarginBounds.Top)

End Sub


 


Dit was een twede stuk code dat juist hetzelfde affect had als het vorige.


Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Private Sub BeginGraphicPrint_Click(ByVal sender As System.Object, _
              ByVal e As System.EventArgs) Handles BtnPrint.Click
   Try

            AddHandler PrintDocument1.PrintPage, AddressOf Me.GraphicPrint
            PrintDocument1.Print()

   Catch ex As Exception
            MsgBox(ex.Message)

   End Try

End Sub

Private Sub GraphicPrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)

        e.Graphics.DrawImage(Image.FromFile("C:\" & BestandsNaam & ".jpg"), _
        e.Graphics.VisibleClipBounds)
        e.HasMorePages = False

End Sub

 


Het zou fijn zijn als Julie me hierbij konden helpen.

ps: ik heb dyslexie :p

Acties:
  • 0 Henk 'm!

  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 12-09 16:17
Je doet het op zich goed, maar waarschijnlijk is "Send to OneNote" je default printer. Je moet even zorgen dat de gebruiker de printer kan instellen of je moet je default printer anders instellen.

Het instellen van een printer kan je doen door een PrinterDialog te maken en de document property daarvan op je PrintDocument te zetten. Roep vervolgens PrinterDialog.ShowDialog() aan, dit stelt je document in op de printer en settings die in het dialoogje geset zijn.

[ Voor 66% gewijzigd door jmzeeman op 03-06-2011 12:25 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Ik zou ook eens kijken naar Crystal Reports voor het afprinten van documenten.

Acties:
  • 0 Henk 'm!

  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 12-09 16:17
Crystal reports lijkt me voor het printen van een plaatje nou niet echt de meest geschikte tool. Het is niet alleen een giga overkill maar je creert ook een extra dependency die er voor zorgt dat de CR runtime mee geïnstaleerd moet worden. Ook is het printen van een plaatje is nou niet echt makkelijker in Crystal Reports (tenzij je een database met plaatjes hebt).

Acties:
  • 0 Henk 'm!

Verwijderd

Daar heb je een punt. Ik heb echter meer achtergrondinformatie over mij. Crystal Reports is voor het printen inderdaad overkill, maar er moeten (dacht ik) ook rapporten enzo afgedrukt worden. Voor enkel plaatjes af te drukken kan je inderdaad best gewoon gebruik maken van de Printerdialog

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Bedankt voor al deze reacties.

Ik heb via de oplossing van jmzeeman het printen voor elkaar gekregen.
nogmaals bedankt voor de hulp. :)
Pagina: 1