且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何通过Pos打印机进行打印

更新时间:2023-12-04 11:48:40

我的建议是你学习哪些命令你的POS打印机支持(可能是ESC / POS命令)然后在VB中构造命令并使用此代码将其直接发送到打印机 http:/ /support.microsoft.com/kb/322090 [ ^ ]

PrintDocument方法应该有效(你没有明确指出你在那里遇到的错误)但是将它与发送打印机命令进行比较,PrintDocument会非常​​慢。
My suggestion is you learn which commands your POS printer supports (likely ESC/POS commands) and then construct the commands in VB and send it directly to the printer by using this code http://support.microsoft.com/kb/322090[^]
PrintDocument approach should work (you have not clearly specified what is the error you got there) but comparing it to sending printer commands, PrintDocument will be very slow.


Imports System.IO

Imports System.Drawing.Printing





Public Class Form1

Public egraphics As Graphics

Public prnDocument As New System.Drawing.Printing.PrintDocument



Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)处理Me.Click

Dim psize As New Printing.PaperSize(A4, 842,595)



AddHandler prnDocument.PrintPage,AddressOf PrintPage



prnDocument.DefaultPageSettings.PaperSize = psize

prnDocument.DefaultPageSettings.Margins.Top = 0

prnDocument.DefaultPageSettings.Margins.Left = 0

prnDocument.DefaultPageSettings.Margins.Bottom = 0

prnDocument.DefaultPageSettings.Margins.Right = 0

prnDocument.OriginAtMargins = True





prnDocument.Print()

End Sub



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

Dim fReportFont As System.Drawing.Font



egraphics = e.Graphics

egraphics.PageUnit = GraphicsUnit.Point

fReportFont = New System.Drawing.Font(Trim(Helvetica),60,FontStyle.Regular)

egraphics.DrawString(这是测试,fReportFont,New SolidBrush(Color.Black),100,200)



End Sub



结束班
Imports System.IO
Imports System.Drawing.Printing


Public Class Form1
Public egraphics As Graphics
Public prnDocument As New System.Drawing.Printing.PrintDocument

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.Click
Dim psize As New Printing.PaperSize("A4", 842, 595)

AddHandler prnDocument.PrintPage, AddressOf PrintPage

prnDocument.DefaultPageSettings.PaperSize = psize
prnDocument.DefaultPageSettings.Margins.Top = 0
prnDocument.DefaultPageSettings.Margins.Left = 0
prnDocument.DefaultPageSettings.Margins.Bottom = 0
prnDocument.DefaultPageSettings.Margins.Right = 0
prnDocument.OriginAtMargins = True


prnDocument.Print()
End Sub

Private Sub PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)
Dim fReportFont As System.Drawing.Font

egraphics = e.Graphics
egraphics.PageUnit = GraphicsUnit.Point
fReportFont = New System.Drawing.Font(Trim("Helvetica"), 60, FontStyle.Regular)
egraphics.DrawString("This is to test", fReportFont, New SolidBrush(Color.Black), 100, 200)

End Sub

End Class