保存报表
报表除打印之外,通过下面三个方法,还可以保存为htm或pdf格式的文件,或保存为图片文件。
提示:以上方法有由一个可选参数,默认为True,如果设置为False,生成报表和保存报表的过程将不会显示进度窗口。
示例一
Dim
doc As New PrintDoc '定义一个新报表示例二
一些用户反馈在使用定义纸张,特别是纸张的宽度大过高度时,打印方向经常会遇到问题。
我们可以将报表保存为PDF文件,然后再打印,例如:
Dim
fl As
String =
"c:\data\test.pdf"
Dim
doc As
New
PrintDoc
Dim
ra As
New prt.RenderArea
doc.PageSetting.Width
= 150
doc.PageSetting.Height
= 80
ra.Width
= "Parent.Width"
ra.Height
= "Parent.Height"
ra.Style.Borders.All
= New prt.Linedef(5,
Color.Red)
doc.Body.Children.Add(ra)
doc.SavePDF(fl)
'保存为PDF文件
Dim
Proc As
New Process
'打开PDF文件
Proc.File
= fl
Proc.Start()
实例三
可以将生成的报表保存为图片文件,例如:
Dim
doc As
New PrintDoc
Dim
rt As
New prt.RenderText
rt.Text
= "Hello Foxtable"
rt.Style.TextColor
= Color.Red
rt.Style.TextAngle
= -45
doc.Body.Children.Add(rt)
doc.SaveImage("c:\data\abc.jpg")
需要注意的是,上面的代码执行后,你得到的图片文件名并不是"abc.jpg",而是:
abc_page1.jpg
abc_page2.jpg
abc_page3.jpg
...
报表的每一页都会生成一个独立的图片文件。
SaveImage可以设置图片的分辨率,其语法为:
SaveImage(Filename,Resolution)
FileName: 要保存的文件名
Resolution: 可选参数,用于设置图片分辨率,默认为150,数值越大,图片越清晰,当然文件尺寸也会越大