printen

  • Onderwerp starter Onderwerp starter erten
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

erten

Gebruiker
Lid geworden
17 apr 2012
Berichten
39
Hallo ik ben bezig met een tekstverwerker te maken.
Het enige wat nog moet is het kunnen afprinten.
Dat lukt.
Maar hij print aleen de tekst af die in de richttextbox staat (niet de opmaak van de tekts hij gebreukt zijn eigen opmaak). Het letter tybe (en het kleur) doet hij niet als ik met een fontdialog gevraagd heb.
Weet iemand de fout ?

ik ga de foute een kleur geven in de coden.(is van het internet)


code
Code:
    Private Sub ButtonPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrint.Click
        PrintDialog1.AllowSomePages = True
        PrintDialog1.ShowHelp = True
        
        PrintDialog1.Document = PrintDocument1
        Dim result As DialogResult = PrintDialog1.ShowDialog()

        If (result = DialogResult.OK) Then
            PrintDocument1.Print()


        End If
    End Sub

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

        
       [COLOR="#FF0000"][B] Dim text As String = RichTextBox1.Text
        Dim printFont As New System.Drawing.Font _
            ("Arial", 35, System.Drawing.FontStyle.Regular)

        e.Graphics.DrawString(text, printFont, _
            System.Drawing.Brushes.Black, 10, 10)[/B][/COLOR]
    End Sub

Alvast bedankt :thumb:
 
Laatst bewerkt:
in andere worden :

hoe print je een richttekstbox af zonder
dat je aan teksttybe en tekst kleur verandert
 
Hier een manier om je richtextbox te printen.

Als je uit gebreider wil kan dat ook laat maar horen.


Code:
Public Class Form1

    Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
        'PrintPage is the foundational printing event. This event gets fired for every 
        ' page that will be printed
        Static intCurrentChar As Int32
        Dim font As New Font("Verdana", 14)
        Dim PrintAreaHeight, PrintAreaWidth, marginLeft, marginTop As Int32
        With PrintDocument1.DefaultPageSettings
            PrintAreaHeight = .PaperSize.Height - .Margins.Top - .Margins.Bottom
            PrintAreaWidth = .PaperSize.Width - .Margins.Left - .Margins.Right
            marginLeft = .Margins.Left
            marginTop = .Margins.Top
            ' X and Y coordinate

        End With

        If PrintDocument1.DefaultPageSettings.Landscape Then
            Dim intTemp As Int32
            intTemp = PrintAreaHeight
            PrintAreaHeight = PrintAreaWidth
            PrintAreaWidth = intTemp
            ' if the user selects landscape mode, swap the printing area height and width
        End If

        Dim intLineCount As Int32 = CInt(PrintAreaHeight / font.Height)
        Dim rectPrintingArea As New RectangleF(marginLeft, marginTop, PrintAreaWidth, PrintAreaHeight)
        Dim fmt As New StringFormat(StringFormatFlags.LineLimit)
        Dim intLinesFilled, intCharsFitted As Int32
        e.Graphics.MeasureString(Mid(RichTextBox1.Text.ToString, intCurrentChar + 1), font, New SizeF(PrintAreaWidth, PrintAreaHeight), fmt, intCharsFitted, intLinesFilled)
        e.Graphics.DrawString(Mid(RichTextBox1.Text.ToString, intCurrentChar + 1), font, Brushes.Black, rectPrintingArea, fmt)
        intCurrentChar += intCharsFitted
        e.HasMorePages = False
        intCurrentChar = 0

    End Sub

    Private Sub PrintToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PrintToolStripButton.Click
        Try
            PrintPreviewDialog1.ShowDialog()
        Catch es As Exception
            MessageBox.Show(es.Message)
        End Try

    End Sub

    Private Sub SelecteerPrinterToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SelecteerPrinterToolStripMenuItem.Click
        PrintDialog1.ShowDialog()
    End Sub

    Private Sub KiesEenLetterTypeToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KiesEenLetterTypeToolStripMenuItem.Click
        FontDialog1.ShowColor = True

        FontDialog1.Font = RichTextBox1.Font
        FontDialog1.Color = RichTextBox1.ForeColor

        If FontDialog1.ShowDialog() <> DialogResult.Cancel Then
            RichTextBox1.Font = FontDialog1.Font
            RichTextBox1.ForeColor = FontDialog1.Color
        End If
    End Sub

    Dim fs
    Dim Createtext
    Private Sub SaveToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveToolStripMenuItem.Click
        Dim saveFileDialog1 As New SaveFileDialog()

        saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
        saveFileDialog1.FilterIndex = 2
        saveFileDialog1.RestoreDirectory = True
        saveFileDialog1.AddExtension = True
        saveFileDialog1.OverwritePrompt = True
        saveFileDialog1.DefaultExt = ".txt"

        If saveFileDialog1.ShowDialog() = DialogResult.OK Then
            Dim sw As New System.IO.StreamWriter(saveFileDialog1.OpenFile)
            If Not (sw Is Nothing) Then
                sw.Write(RichTextBox1.Text)
            End If
            sw.Close()
        End If


    End Sub

   
   
End Class
 
Laatst bewerkt:
halles werkt goed tot je op printen kilkt dan doet hij nieks ???
 
Heb je wel de juiste printer geselecteerd?
En in de PrintPreviewDialog1 het PrintDocument1 opgegeven???
 
Laatst bewerkt:
klimmer zei:
afprinten is een contaminatie van afdrukken en printen.
en het is letter type met een P.
Ja, en je begint elke zin met een hoofdletter.
Wees a.u.b. niet zo'n wijsneus.
 
't is maar zodat hij het weet. Want in z'n andere topic deed hij het ook.
 
Typen en of schrijven van de juiste woooren zijn volgens mij op een ander soort forem
Dislectie is al vervelend genoeg latewn wij het hier bij programeren houden.
fouten in geprogrammeerd.
Groet Old Hippy
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan