1

我正在完成我正在编写的程序,我必须创建一个到 Epson LQ-300+ 点阵的打印。打印必须在纸张的某些特定部分打印一些文本(金额,名称等)谁能指出我正确的方向或给我一个例子,因为我无法找到一些东西以便直接发送 ASCII 字符到打印机通过 LPT1。谢谢你。

4

1 回答 1

0

就定位而言,它主要是反复试验,它还取决于字体以及您是否使用通用/文本驱动程序(如果是的话,字符间距、行间距和字体是什么打印机已设置为)。回到 DOS 时代,您可以将单个字符发送到打印机,但在 Windows 中打印是基于页面的,这意味着您需要使用PrintDocument 类, 使用PrintPageEventArgs图形属性的PrintString 方法处理PrintPage 事件,以将文本放置在您需要的位置成为。

像这样的东西:

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    If PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
        PrintDocument1.Print()
    End If
End Sub

Private Sub PrintDocument1_PrintPage(sender As System.Object, e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
    e.Graphics.DrawString("Hello World", New Font("Arial", 10), Brushes.Black, New Point(100, 100))
End Sub
于 2012-12-24T17:55:00.987 回答