vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Drucken mit Textumbruch 
Autor: Enrico Hahn
Datum: 23.11.05 23:18

Damit geht das, aber nur mit einer Textbox, keine Ahnung wie das geht wenn man 2 Textboxen mit Umbruch untereinander drucken will:
Imports System.Drawing.Printing
 
    Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As _
      System.Drawing.Printing.PrintPageEventArgs) Handles _
      PrintDocument1.PrintPage
 
        Static intCurrentChar As Int32
        Dim font As New Font("Arial", 10)
 
        Dim intPrintAreaHeight, intPrintAreaWidth, marginLeft, marginTop, _
          marginBottom As Int32
 
        With PrintDocument1.DefaultPageSettings
            PrintDocument1.DefaultPageSettings.Margins.Bottom = 300
            intPrintAreaHeight = .PaperSize.Height - .Margins.Top - _
              .Margins.Bottom
            intPrintAreaWidth = .PaperSize.Width - .Margins.Left - _
            .Margins.Right
 
            marginLeft = 75 ' X Koordinate
            marginTop = 288 ' Y Koordinate
        End With
 
        If PrintDocument1.DefaultPageSettings.Landscape Then
            Dim intTemp As Int32
            intTemp = intPrintAreaHeight
            intPrintAreaHeight = intPrintAreaWidth
            intPrintAreaWidth = intTemp
        End If
 
        Dim intLineCount As Int32 = CInt(intPrintAreaHeight / font.Height)
        Dim rectPrintingArea As New RectangleF(marginLeft, marginTop, _
          intPrintAreaWidth, intPrintAreaHeight)
 
        Dim fmt As New StringFormat(StringFormatFlags.LineLimit)
 
        Dim intLinesFilled, intCharsFitted As Int32
 
        e.Graphics.MeasureString(Mid(TextBox1.Text, intCurrentChar + 1), font, _
                    New SizeF(intPrintAreaWidth, intPrintAreaHeight), fmt, _
                    intCharsFitted, intLinesFilled)
 
        e.Graphics.DrawString(Mid(TextBox1.Text, intCurrentChar + 1), font, _
            Brushes.Black, rectPrintingArea, fmt)
 
        intCurrentChar += intCharsFitted
 
        If intCurrentChar < TextBox1.Text.Length Then
            e.HasMorePages = True
        Else
            e.HasMorePages = False
            intCurrentChar = 0
        End If
    End Sub
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        Dim dialog As New PrintDialog
        dialog.Document = PrintDocument1
 
        If dialog.ShowDialog = DialogResult.OK Then
            PrintDocument1.Print()
        End If
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Drucken mit Textumbruch958Hänk23.11.05 09:08
Re: Drucken mit Textumbruch715Hänk23.11.05 23:00
Re: Drucken mit Textumbruch749Enrico Hahn23.11.05 23:18
Re: Drucken mit Textumbruch688Hänk23.11.05 23:37
Re: Drucken mit Textumbruch647Enrico Hahn23.11.05 23:39
Re: Drucken mit Textumbruch694Hänk24.11.05 08:46

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel