大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
PrintDocument1.Print()
创新互联建站主营林甸网站建设的网络公司,主营网站建设方案,成都app软件开发,林甸h5成都小程序开发搭建,林甸网站营销推广欢迎林甸等地区企业咨询
使用PrintDocument进行打印“Brush, 50, 80”50左边距离,80上面距离
Private Sub PrintDocument1_PrintPage(sender As Object, e As Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
Dim mypen As Pen = New Pen(Color.Blue, 2)
e.Graphics.DrawString("取号单", New Font("Microsoft Sans Serif", 18, FontStyle.Bold), New Pen(Color.Black, 1).Brush, 30, 30)
e.Graphics.DrawString("XXXXXX", New Font("Microsoft Sans Serif", 24, FontStyle.Regular), New Pen(Color.Black, 1).Brush, 50, 80)
e.Graphics.DrawString("您的号码是:", New Font("Microsoft Sans Serif", 16, FontStyle.Regular), New Pen(Color.Black, 1).Brush, 30, 135)
e.Graphics.DrawString("打印时间:" Now(), New Font("Microsoft Sans Serif", 10, FontStyle.Regular), New Pen(Color.Black, 1).Brush, 80, 330)
End Sub
一般情况下先用EXCEL做好一个样表文件,设定好打印区域和样式,需要填内容的时候,先程序复制一个样表文件,然后调用API打开表格填写内容并打印,如果想用API来实现调整模板和打印预览,可能比较困难,而且很抽象,个人觉得费时费力效果还不一定理想
使用 PrintDocument 控件的 Print() 方法可以打印指定对象中的内容,参考代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
PrintDocument1.Print()
End Sub
Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
Dim bm As New Bitmap(Me.DataGridView1.Width, Me.DataGridView1.Height)
DataGridView1.DrawToBitmap(bm, New Rectangle(0, 0, Me.DataGridView1.Width, Me.DataGridView1.Height))
e.Graphics.DrawImage(bm, 0, 0)
End Sub
有个PrintDocument控件,可以实现打印。。。
MSDN原话:
使用 PrintDocument 组件
涉及 PrintDocument 组件的两种主要情况是:
简单的打印作业,如打印单个文本文件。在这种情况下,应将 PrintDocument 组件添加到 Windows 窗体,然后在 PrintPage 事件处理程序中添加打印文件的编程逻辑。 该编程逻辑应以使用 Print 方法打印文档结束。
此方法向打印机发送一个 Graphics 对象,该对象包含在 PrintPageEventArgs 类的 Graphics 属性中。
有关如何使用 PrintDocument 组件打印文本文档的示例,请参见
如何:打印 Windows 窗体中的多页文本文件。
更为复杂的打印作业,如想要重新使用已编写的打印逻辑的情况。
在这种情况下,应从 PrintDocument 组件派生一个新组件,并重写
(请参见 Visual Basic 的 重写或 C# 的 重写) PrintPage 事件。
将 PrintDocument 组件添加到窗体后,它出现在 Windows 窗体设计器底部的栏中