初探C#的打印功能

来源:互联网 发布:sql怎么设置两个主键 编辑:程序博客网 时间:2024/05/02 01:00

初探C#的打印功能

利用C#实现打印功能还是比较简单的,主要就是在画布上将需要打印的内容画出来,然后将画布打印出来
我们主要只需两个控件:printDialog和printDocument
首先就是绘制我们需要打印的内容,也就是指定printDocument的PrintPage这个根据需求有时候是比较麻烦的,下面我先给出一个简单的例子:

  private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)        {           e.Graphics.DrawString("Hello world", new System.Drawing.Font("宋体", 24), Brushes.Black, 86, 175);        }

这个例子实现的就是在给定的位置绘制一个字符串出来
其次,我们只需指定printDialog的Document,然后调用print方法即可

printDialog1.Document = printDocument1;            if (printDialog1.ShowDialog() == DialogResult.OK)            {                this.printDocument1.Print();            }

那么问题来了,如果我想打印多页该怎么办?
一句话:在printpage写上:

 e.HasMorePages = true;

这样就可以实现打印多页内容了
将需要打印的内容都打印后还需写上

e.HasMorePages = false;

如果我想实现预览功能,那该怎么办?
只需拉一个printPreviewDialog然后写上:

printPreviewDialog1.Document = printDocument1;            printPreviewDialog1.ShowDialog();

如果我想对页面进行设置,那么我们需要拉一个pageSetupDialog
然后将其showDialog即可
是不是很简单?

0 0
原创粉丝点击