Web Development

General discussion


Vb.net2003 - Dos mode Printing

By jomonthekkel ·
Dos mode printing
i want to write a file direct to the printerport

in vb6 i used to printer.port,penter.enddoc....

This conversation is currently closed to new comments.

Thread display: Collapse - | Expand +

All Comments

Collapse -

by p.j.hutchison In reply to Vb.net2003 - Dos mode Pri ...

Check the PrintDocument.Print method in the VS on line help includes an example.

Collapse -

by amoljpatil In reply to Vb.net2003 - Dos mode Pri ...

Public Class PrintingExample
Private printFont As Font
Private streamToPrint As StreamReader
Private Shared filePath As String

Public Sub New()
End Sub

' The PrintPage event is raised for each page to be printed.
Private Sub pd_PrintPage(sender As Object, ev As PrintPageEventArgs)
Dim linesPerPage As Single = 0
Dim yPos As Single = 0
Dim count As Integer = 0
Dim leftMargin As Single = ev.MarginBounds.Left
Dim topMargin As Single = ev.MarginBounds.Top
Dim line As String = Nothing

' Calculate the number of lines per page.
linesPerPage = ev.MarginBounds.Height / printFont.GetHeight(ev.Graphics)

' Iterate over the file, printing each line.
While count < linesPerPage
line = streamToPrint.ReadLine()
If line Is Nothing Then
Exit While
End If
yPos = topMargin + count * printFont.GetHeight(ev.Graphics)
ev.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, _
yPos, New StringFormat())
count += 1
End While

' If more lines exist, print another page.
If Not (line Is Nothing) Then
ev.HasMorePages = True
ev.HasMorePages = False
End If
End Sub

' Print the file.
Public Sub Printing()
streamToPrint = New StreamReader(filePath)
printFont = New Font("Arial", 10)
Dim pd As New PrintDocument()
AddHandler pd.PrintPage, AddressOf pd_PrintPage
' Print the document.
End Try
Catch ex As Exception
End Try
End Sub 'Pr

Related Discussions

Related Forums