Практическое руководство. Печать графических изображений в Windows Forms

В приложениях для Windows часто требуется печатать графические объекты. Класс Graphics предоставляет методы для рисования объектов на таких устройствах, как экран или принтер.

Печать графических объектов

  1. Добавьте в форму компонент PrintDocument.

  2. В обработчике событий PrintPage используйте свойство Graphics класса PrintPageEventArgs, чтобы сообщить принтеру тип графического объекта для печати.

    В приведенном ниже примере кода показан обработчик событий, используемый для создания синего эллипса в ограничивающем прямоугольнике. Прямоугольник имеет следующее расположение и размеры: начало в точке 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(System::Object ^ sender,  
          System::Drawing::Printing::PrintPageEventArgs ^ e)  
       {  
          e->Graphics->FillRectangle(Brushes::Blue,  
             Rectangle(100, 150, 250, 250));  
       }  
    

    (Visual C# и Visual C++) Поместите следующий код в конструктор формы для регистрации обработчика событий.

    this.printDocument1.PrintPage += new  
       System.Drawing.Printing.PrintPageEventHandler  
       (this.printDocument1_PrintPage);  
    
    this->printDocument1->PrintPage += gcnew  
       System::Drawing::Printing::PrintPageEventHandler  
       (this, &Form1::printDocument1_PrintPage);  
    

См. также