重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
可以把数据导出到EXCEL,然后使用EXCEL进一步处理后使用。
做网站、网站设计的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给成都创新互联公司一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。
也可以做成vb报表(VB自带有)。
先设置报表格式,打印时向报表传递数据就可以了。
比如:
Private Sub Document_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)
e.Graphics.DrawString(str0, New Font("Arial", 14, FontStyle.Regular), Brushes.Black, 50, 50)
e.Graphics.DrawString(A1, New Font("Arial", 10, FontStyle.Regular), Brushes.Black,50, 100)
e.Graphics.DrawString(A2, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 300,100)
e.Graphics.DrawString(A3, New Font("Arial", 10, FontStyle.Regular), Brushes.Black, 800,100)
也就是分次用不同坐标和不同的字体来打印各变量。画线用:
e.Graphics.DrawLine(BlackPen, x1, y1, x2, y2)。
具体坐标数值自己用尺量出,再换算。
说一下我的处理方法吧,楼主可以参考。
先在打印机的服务器属性中设定一个符合打印标准的纸张尺寸。这样使你的打印纸尺寸固定,不需要你每次打印的时候都重新指定打印尺寸,避免计算误差。
然后在你要打印的内容外面嵌套一套一个table,设定一个初始的Style的margin-top值。多张的票据内容是通过循环计算产生。在调整过程中,计算下一张与上一张的相对margin-top值,多次计算后你就能找到每次打印时的上下偏移值,然后做一个算法计算两张之间的margin-top值,就OK了。
我们做套打发票都是这么做的,这是一个重复性很强的工作,要有耐心。另外,一定要要求所有的用户使用同一款打印机,不同的打印机的偏移值是不一样的。
有个PrintDocument控件,可以实现打印。。。
MSDN原话:
使用 PrintDocument 组件
涉及 PrintDocument 组件的两种主要情况是:
简单的打印作业,如打印单个文本文件。在这种情况下,应将 PrintDocument 组件添加到 Windows 窗体,然后在 PrintPage 事件处理程序中添加打印文件的编程逻辑。 该编程逻辑应以使用 Print 方法打印文档结束。
此方法向打印机发送一个 Graphics 对象,该对象包含在 PrintPageEventArgs 类的 Graphics 属性中。
有关如何使用 PrintDocument 组件打印文本文档的示例,请参见
如何:打印 Windows 窗体中的多页文本文件。
更为复杂的打印作业,如想要重新使用已编写的打印逻辑的情况。
在这种情况下,应从 PrintDocument 组件派生一个新组件,并重写
(请参见 Visual Basic 的 重写或 C# 的 重写) PrintPage 事件。
将 PrintDocument 组件添加到窗体后,它出现在 Windows 窗体设计器底部的栏中
我帮你把最后一部分的语句顺序调换一下。你试一试
sub button1_click() '---执行打印
Dim pd As PrintDocument = New PrintDocument
pd.PrinterSettings = PrintDialog1.PrinterSettings
If _PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
for i=0 to 1 '这样可以两次截图
CaptureScreen() '--执行前面自定义函数截图
AddHandler pd.PrintPage, AddressOf Document_PrintPage
pd.Print()
Threading.Thread.sleep(100) ‘ 再加上一个间隔
next
end sub
首先设定窗体输出时的大小,然后在上面设定多个picture或image控件。