Nachfolgender Tipp zeigt, wie man unter VB.NET ein Bild ausdrucken kann. Bild einer PictureBox ausdrucken With PrintDocument1 ' Drucker für den Ausdruck festlegen .PrinterSettings.PrinterName = "PDFCreator" ' Dokument-Title .DocumentName = "Print Picture" ' Ausdruck starten .Print() End With Durch Aufruf der Print-Methode wird der Druckauftrag gestartet und das PrintPage-Ereignis von "PrintDocument1" ausgelöst. Der Ausdruck selbst erfolgt dann immer im PrintPage-Ereignis. Private Sub PrintDocument1_PrintPage(ByVal sender As Object, _ ByVal e As System.Drawing.Printing.PrintPageEventArgs) _ Handles PrintDocument1.PrintPage Dim gr As Graphics = e.Graphics ' Verweis auf das Bild festlegen Dim oImage As Image = PictureBox1.Image ' Rechteck für den Ausdruck festlegen ' Position + Originalgröße Dim p As New Point(e.MarginBounds.Left, e.MarginBounds.Top) Dim r As New Rectangle(p.X, p.Y, oImage.Width, oImage.Height) ' Bild drucken im angegebenen Rechteck drucken gr.DrawImage(oImage, r) gr.Dispose() End Sub Im obigen Beispiel wird über MarginBound die linke obere Ecke der eingestellten Druck-Seitenränder ermittelt, an der das Bild ausgedruckt werden soll. Bild aus Datei laden und ausdrucken Dim oImage As Image = PictureBox1.Image durch folgende Zeile ersetzt werden: Dim oImage As Image = Image.FromFile("datei.jpg") Druck mit Druckvorschau With PrintPreviewDialog1 .Document = PrintDocument1 .ShowDialog() End With Bild "einrahmen Private Sub PrintDocument1_PrintPage(ByVal sender As Object, _ ByVal e As System.Drawing.Printing.PrintPageEventArgs) _ Handles PrintDocument1.PrintPage Dim gr As Graphics = e.Graphics ' Verweis auf das Bild festlegen Dim oImage As Image = PictureBox1.Image ' Rechteck für den Ausdruck festlegen ' Position + Originalgröße Dim p As New Point(e.MarginBounds.Left, e.MarginBounds.Top) Dim r As New Rectangle(p.X, p.Y, oImage.Width, oImage.Height) ' Bild drucken im angegebenen Rechteck drucken gr.DrawImage(oImage, r) ' Bild mit blauer Farbe "einrahmen" r = New Rectangle(r.X - 1, r.Y - 1, r.Width + 1, r.Height + 1) gr.DrawRectangle(Pens.Blue, r) gr.Dispose() End Sub Dieser Tipp wurde bereits 42.766 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats ![]() Manfred Bohn IndexOf für mehrdimensionale Arrays Die generische Funktion "IndexOf" ermittelt das erste Auftreten eines bestimmten Wertes in einem n-dimensionalen Array sevZIP40 Pro DLL ![]() Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |