首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web Service >

winform 打印时化表格解决办法

2012-02-14 
winform 打印时化表格有一个winform窗体,用了两个控件,一个是webBrowser1,一个是printDialog1,是通过webse

winform 打印时化表格
有一个winform窗体,用了两个控件,一个是webBrowser1,一个是printDialog1,
是通过webservice将图片路径从数据库里得到显示在窗体上,然后通过Pen linePen = new Pen(Color.Black)画出像表格一样的格式,将图排尿放在这个表格里然后印出来,
不知道怎么实现,怎样修改下面的代码啊

因为我对webservice不了解,我们老大又让我修改,所以请大家帮帮忙,

[解决办法]

C# code
FileStream fs = new FileStream(strImageSource, FileMode.Open, FileAccess.Read);Image image = System.Drawing.Image.FromStream(StreamToPrint);      System.Drawing.Rectangle destRect = new System.Drawing.Rectangle(topMargin, leftMargin, width, height);                      System.Drawing.Rectangle destRect = new System.Drawing.Rectangle(topMargin, leftMargin, width, height);                   //向画布写入图片                    for (int i = 0; i < Convert.ToInt32(Math.Floor((double)image.Height/ 820)) + 1; i++)                      {                                                   e.Graphics.DrawImage(image, destRect, i*820,i*1170 , image.Width, image.Height, System.Drawing.GraphicsUnit.Pixel);                          //走纸换页                          if (i * 1170 >= e.PageBounds.Height - 60)//页面累加的高度大于页面高度。根据自己需要,可以适当调整                           {                              //如果大于设定的高                              e.HasMorePages = true;                           /*                             * PrintPageEventArgs类的HaeMorePages属性为True时,通知控件器,必须再次調用OnPrintPage()方法,打印一个页面。                             * PrintLoopI()有一个用於每个要打印的页面的序例。如果HasMorePages是False,PrintLoop()就会停止。                            */                             return;                         } 

热点排行