分享

C#调用打印机,打印图片

 goodwangLib 2018-01-27
  1. <span style="white-space:pre;"> </span>//打印  
  2.         private void button5_Click(object sender, EventArgs e)  
  3.         {  
  4.             //获取或设置一个值,该值指示是否发送到文件或端口  
  5.             printDocument1.PrinterSettings.PrintToFile = true;  
  6.             //设置打印时横向还是纵向  
  7.             printDocument1.DefaultPageSettings.Landscape = true;  
  8.             //打印预览  
  9.            // PrintPreviewDialog ppd = new PrintPreviewDialog();  
  10.             if (bmp == null)  
  11.             {  
  12.                 return;  
  13.             }  
  14.    
  15.             //设置边距  
  16.             Margins margin = new Margins(20, 20, 20, 20);  
  17.             printDocument1.DefaultPageSettings.Margins = margin;  
  18.             ////纸张设置默认  
  19.             //PaperSize pageSize = new PaperSize("First custom size", 800, 600);  
  20.             //pd.DefaultPageSettings.PaperSize = pageSize;  
  21.             //打印事件设置  
  22.             printDocument1.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);  
  23.            //ppd.Document = printDocument1;  
  24.            // ppd.ShowDialog();  
  25.             try  
  26.             {  
  27.                 printDocument1.Print();  
  28.             }  
  29.             catch (Exception ex)  
  30.             {  
  31.                 MessageBox.Show(ex.Message, "打印出错", MessageBoxButtons.OK, MessageBoxIcon.Error);  
  32.                 printDocument1.PrintController.OnEndPrint(printDocument1, new PrintEventArgs());  
  33.             }  
  34.    
  35.         }  
  36.            
  37.         //打印事件处理  
  38.         private void pd_PrintPage(object sender, PrintPageEventArgs e)  
  39.         {  
  40.             int x = e.MarginBounds.X;  
  41.             int y = e.MarginBounds.Y;  
  42.             int width = bmp.Width;  
  43.             int height = bmp.Height;  
  44.             Rectangle destRect = new Rectangle(x, y, width, height);  
  45.             e.Graphics.DrawImage(bmp, destRect, 0, 0, bmp.Width, bmp.Height, System.Drawing.GraphicsUnit.Pixel);  
  46.         }  


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多