毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> net技术 >> 正文

RDLC直接打印样式和web页面显示的不一样 第2页

更新时间:2012-6-25:  来源:毕业论文
            printDoc.PrintPage += new PrintPageEventHandler(PrintPage);
            //执行打印操作,Print方法将触发PrintPage事件。 
            printDoc.DefaultPageSettings.PaperSize.RawKind = 9;
            //横版打印
            printDoc.DefaultPageSettings.Landscape = true;
            //打印预览                  
            PrintPreviewDialog ppd = new PrintPreviewDialog();
            ppd.Document = printDoc;
            if (DialogResult.OK == ppd.ShowDialog())
            {
                printDoc.Print();          //打印    
            }
        }

        private void PrintPage(object sender, PrintPageEventArgs ev)
        {
            //Metafile对象用来保存EMF或WMF格式的图形, 
            //我们在前面将报表的内容输出为EMF图形格式的数据流。       
            m_streams[m_currentPageIndex].Position = 0;
            Metafile pageImage = new Metafile(m_streams[m_currentPageIndex]);
            ev.PageSettings.PaperSize.RawKind = 9;
            //指定是否横向打印
            ev.PageSettings.Landscape = true;
            //这里的Graphics对象实际指向了打印机  
            ev.Graphics.DrawImage(pageImage, 0, 0);
            m_streams[m_currentPageIndex].Close();
            m_currentPageIndex++;
            //设置是否需要继续打印 
            ev.HasMorePages = (m_currentPageIndex < m_streams.Count);
        }

        #endregion
是不是写了css,服务器事件就是这样的。 
样式在调用的时候id发生了变化,写弹出定位一下。
研究了下,可能是在vs2010下DrawImage画图区别吧,具体原因不清。。。
将ev.Graphics.DrawImage(pageImage, 0, 0);
改成下面指定的大小缩放就可以了
ev.Graphics.DrawImage(pageImage, ev.PageBounds, 0, 0, ev.PageBounds.Width, ev.PageBounds.Height, System.Drawing.GraphicsUnit.Millimeter);

上一页  [1] [2] 

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。