如何:在 Windows 窗体中打印图形
更新:2007 年 11 月
您经常需要在基于 Windows 的应用程序中打印图形。Graphics 类提供将对象绘制到设备(如屏幕或打印机)的方法。
打印图形
向窗体添加 PrintDocument 组件。
在 PrintPage 事件处理程序中,使用 PrintPageEventArgs 类的 Graphics 属性指示打印机打印哪一类型的图形。
下面的代码示例演示用来在边框内创建蓝色椭圆的事件处理程序。该边框具有如下位置和尺寸:起点为 (100,150),宽度为 250,高度为 250。
Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage e.Graphics.FillEllipse(Brushes.Blue, New Rectangle(100, 150, 250, 250)) End Sub
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { e.Graphics.FillRectangle(Brushes.Blue, new Rectangle(100, 150, 250, 250)); }
private void printDocument1_PrintPage(Object sender, System.Drawing.Printing.PrintPageEventArgs e) { e.get_Graphics().FillRectangle(Brushes.get_Blue(), new Rectangle(100, 150, 250, 250)); }
private: void printDocument1_PrintPage(System::Object ^ sender, System::Drawing::Printing::PrintPageEventArgs ^ e) { e->Graphics->FillRectangle(Brushes::Blue, Rectangle(100, 150, 250, 250)); }
((Visual C#、Visual J# 和 Visual C++)在窗体的构造函数中放入以下代码以注册事件处理程序。
this.printDocument1.PrintPage += new System.Drawing.Printing.PrintPageEventHandler (this.printDocument1_PrintPage);
this.printDocument1.add_PrintPage(new System.Drawing.Printing.PrintPageEventHandler( this.printDocument1_PrintPage));
this->printDocument1->PrintPage += gcnew System::Drawing::Printing::PrintPageEventHandler (this, &Form1::printDocument1_PrintPage);