zoukankan      html  css  js  c++  java
  • C#打印

            private void btnPreview_Click(object sender, EventArgs e)
            {
                PrintPreviewDialog printPreviewDialog = new PrintPreviewDialog();
                //创建打印文档
                PrintDocument printDocument1 = new PrintDocument();
                //开始打印的时候
                printDocument1.BeginPrint += new PrintEventHandler(printDocument1_BeginPrint);
                //输送打印数据
                printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
                //打印结束的时候
                printDocument1.EndPrint += new PrintEventHandler(printDocument1_EndPrint);
                //设置纸张的大小,主要用于自定义纸张
                System.Drawing.Printing.PageSettings pageSet = new System.Drawing.Printing.PageSettings();
                pageSet.PaperSize = new PaperSize("First custom size", 1366, 768);
                printDocument1.DefaultPageSettings = pageSet;
                //
                printPreviewDialog.Document = printDocument1;
                printPreviewDialog.ShowDialog();
                printPreviewDialog.Close();
            }
    
            private void printDocument1_EndPrint(object sender, PrintEventArgs e)
            {
                //throw new NotImplementedException();
                //打印结束之后进行的操作
            }
    
            private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
            {
                //分页,分页数=选中节点数 HasMorePages 用来设置自动触发打印事件 
                //if (Count == 0)
                //{
                //    e.HasMorePages = false;
                //}
                //else
                //{
                //    e.HasMorePages = true;
                //}
    
                //当第二次加载的数据的时候,要把第一调用的画布,清除一遍,记得这是很重要的一句话哇!呜呜!
                //e.Graphics.Clear(Color.White);
                //绘制背景图像
                //e.Graphics.DrawImage(panelPrint.BackgroundImage, 0, 0, 1366, 768);
            }
    
            private void printDocument1_BeginPrint(object sender, PrintEventArgs e)
            {
                //throw new NotImplementedException();
                // 打印开始之前整理好数据源
            }
    
            private void btnPrint_Click(object sender, EventArgs e)
            {
                PageSetupDialog pageSetupDialog1 = new PageSetupDialog();
                //创建打印文档
                PrintDocument printDocument1 = new PrintDocument();
                //开始打印的时候
                printDocument1.BeginPrint += new PrintEventHandler(printDocument1_BeginPrint);
                //输送打印数据
                printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
                //打印结束的时候
                printDocument1.EndPrint += new PrintEventHandler(printDocument1_EndPrint);
                //设置纸张的大小,主要用于自定义纸张
                System.Drawing.Printing.PageSettings pageSet = new System.Drawing.Printing.PageSettings();
                pageSet.PaperSize = new PaperSize("First custom size", 1024, 768);//此参数调整纸张大小
                printDocument1.DefaultPageSettings = pageSet;
                //将打印文档赋给打印组件
                pageSetupDialog1.Document = printDocument1;
                //纸张及页边距设置
                pageSetupDialog1.PageSettings.Margins = new Margins(0, 0, 0, 0);
                if (DialogResult.OK == pageSetupDialog1.ShowDialog())
                {
                    printDocument1.Print();
                }
                printDocument1.Dispose();
                //打印完毕后记得清空临时数据,释放内存,不管别的地方有没有清
            }    
  • 相关阅读:
    vue.js代码开发最常见的功能集合
    干货|程序员常去的14个顶级开发社区
    17个Web前端开发工程师必看的国外网站
    识别“百度权重”作弊的方法
    问题与对策:CSS的margin塌陷(collapse)
    程序猿,你们这么拼是找不到妹纸的!
    Jquery UI的datepicker插件使用方法
    初识Ajax---简单的Ajax应用实例
    Ajax解决缓存的5种方法
    Jquery+bootstrap实现静态博客主题
  • 原文地址:https://www.cnblogs.com/rinack/p/3564099.html
Copyright © 2011-2022 走看看