2013-02-18 96 views
1

我写了一个小程序来存储和希望打印联系信息(在vb.net中)。该程序包含一些文本字段和一个图片框。保存信息等。任何人都可以推荐一种快速的方式将表单保存为可以转移到工作计算机并打印的格式(她无法在工作中安装我的程序,禁忌政策等)。使用printform控件,将PrintAction设置为PrintToFile的printform.print()只是给我乱码。我想我可以一点一点打印到html文件,但我想我会问有没有人知道更好的方法。此外,与HTML路线我不知道如何添加图片框的内容。提前致谢。在vb.net打印表格

+0

嗯,你总是可以写入到一个文本文件,并将其发送或HTML会的工作,但你提到的图像,所以我的猜测是一个HTML文件,然后你又不得不将图像发送以及。另一种选择是创建一封电子邮件并发送它... – Codexer 2013-02-18 04:55:34

+0

谢谢,无论如何,这将是一个很好的做法。我必须将图像盒的内容保存到一个文件中,然后在标记中引用图像名称和位置?我不确定我能否正确格式化电子邮件(我想要可打印版本的格式,如卡片的rolladex格式)。 – user1975195 2013-02-18 05:10:31

回答

2

您可以尝试使用DrawToBitmap Method将表单保存为位图,然后可以将其保存为图像,然后再打印出来,使用此方法将遇到的主要问题是DPI设置与屏幕不同打印机。

Dim bmp As Bitmap = New Bitmap(Me.Width, Me.Height) 
Me.DrawToBitmap(bmp, New Rectangle(New Point(0, 0), Me.Size)) 
bmp.Save("C:\temp\123.bmp") 'Set your path and your filename here 
+0

听起来不错。我会试一试。不知道这是可能的,它是一件很好的事情要知道。谢谢。 – user1975195 2013-02-18 05:26:22

+0

欢迎您,我在这个例子中保存了完整的表单,这个方法也可以用于控件,例如,如果您在窗体上放置了一个面板,然后将其他控件放在该窗体中,则可以将该面板的内容保存为位图消除了我的示例所具有的Window chrome。 – 2013-02-18 05:26:54

+1

+1好答案,我不确定最近几天缺少upvotes的背后是什么。 – 2013-02-18 05:46:26