방법: 그리는 데 필요한 그래픽 개체 만들기How to: Create Graphics Objects for Drawing

생성 해야 하는 선과 도형 그리기, 텍스트를 렌더링 하거나 표시 하 고 조작할 수 GDI +를 사용 하 여 이미지, 전에 Graphics 개체입니다.Before you can draw lines and shapes, render text, or display and manipulate images with GDI+, you need to create a Graphics object. Graphics 개체 GDI + 그리기 화면을 나타내며는 그래픽 이미지를 만드는 데 사용 되는 개체입니다.The Graphics object represents a GDI+ drawing surface, and is the object that is used to create graphical images.

그래픽 작업에 두 단계가 있습니다.There are two steps in working with graphics:

  1. 만들기는 Graphics 개체입니다.Creating a Graphics object.

  2. 사용 하는 Graphics 선과 도형 그리기, 텍스트를 렌더링 하거나 이미지를 조작 하는 개체입니다.Using the Graphics object to draw lines and shapes, render text, or display and manipulate images.

그래픽 개체 만들기Creating a Graphics Object

다양 한 방법에서에서 graphics 개체를 만들 수 있습니다.A graphics object can be created in a variety of ways.

그래픽 개체를 만들려면To create a graphics object

  • 그래픽 개체에 대 한 참조의 일부로 받은 합니다 PaintEventArgsPaint 양식이 나 컨트롤의 이벤트.Receive a reference to a graphics object as part of the PaintEventArgs in the Paint event of a form or control. 컨트롤에 대 한 그리기 코드를 만들 때 그래픽 개체에 대 한 참조를 가져오는 방법을 일반적으로입니다.This is usually how you obtain a reference to a graphics object when creating painting code for a control. 마찬가지로 graphics 개체의 속성으로 가져올 수도 있습니다는 PrintPageEventArgs 처리할 때 합니다 PrintPage 에 대 한 이벤트를 PrintDocument합니다.Similarly, you can also obtain a graphics object as a property of the PrintPageEventArgs when handling the PrintPage event for a PrintDocument.

    또는-or-

  • 호출을 CreateGraphics 에 대 한 참조를 가져오려면 폼 또는 컨트롤의 메서드는 Graphics 해당 폼 이나 컨트롤의 그리기 화면을 나타내는 개체입니다.Call the CreateGraphics method of a control or form to obtain a reference to a Graphics object that represents the drawing surface of that control or form. 양식이 나 이미 존재 하는 컨트롤을 그릴 하려는 경우이 메서드를 사용 합니다.Use this method if you want to draw on a form or control that already exists.

    또는-or-

  • 만들기는 Graphics 에서 상속 되는 모든 개체에서에서 만든 Image합니다.Create a Graphics object from any object that inherits from Image. 이 방법은 기존 이미지를 변경 하려는 경우에 유용 합니다.This approach is useful when you want to alter an already existing image.

    다음 섹션에서는 이러한 각 프로세스에 대 한 세부 정보를 제공 합니다.The following sections give details about each of these processes.

그리기 이벤트 처리기에서 PaintEventArgsPaintEventArgs in the Paint Event Handler

프로그래밍 하는 경우는 PaintEventHandler 컨트롤에 대 한 또는 PrintPage 에 대 한를 PrintDocument, graphics 개체의 속성 중 하나로 제공 됩니다 PaintEventArgs 또는 PrintPageEventArgs합니다.When programming the PaintEventHandler for controls or the PrintPage for a PrintDocument, a graphics object is provided as one of the properties of PaintEventArgs or PrintPageEventArgs.

Paint 이벤트에 PaintEventArgs에서 Graphics 개체에 대 한 참조를 가져오려면To obtain a reference to a Graphics object from the PaintEventArgs in the Paint event

  1. 선언 된 Graphics 개체입니다.Declare the Graphics object.

  2. 변수 참조를 할당 합니다 Graphics 개체의 일부로 전달 되는 PaintEventArgs합니다.Assign the variable to refer to the Graphics object passed as part of the PaintEventArgs.

  3. 폼 이나 컨트롤을 그리는 코드를 삽입 합니다.Insert code to paint the form or control.

    다음 예제에서는 참조 하는 방법을 보여 줍니다는 Graphics 에서 개체를 PaintEventArgsPaint 이벤트:The following example shows how to reference a Graphics object from the PaintEventArgs in the Paint event:

    Private Sub Form1_Paint(sender As Object, pe As PaintEventArgs) Handles _  
       MyBase.Paint  
       ' Declares the Graphics object and sets it to the Graphics object  
       ' supplied in the PaintEventArgs.  
       Dim g As Graphics = pe.Graphics  
       ' Insert code to paint the form here.  
    End Sub  
    
    private void Form1_Paint(object sender,   
       System.Windows.Forms.PaintEventArgs pe)   
    {  
       // Declares the Graphics object and sets it to the Graphics object  
       // supplied in the PaintEventArgs.  
       Graphics g = pe.Graphics;  
       // Insert code to paint the form here.  
    }  
    
    private:  
       void Form1_Paint(System::Object ^ sender,  
          System::Windows::Forms::PaintEventArgs ^ pe)  
       {  
          // Declares the Graphics object and sets it to the Graphics object  
          // supplied in the PaintEventArgs.  
          Graphics ^ g = pe->Graphics;  
          // Insert code to paint the form here.  
       }  
    

CreateGraphics 메서드CreateGraphics Method

사용할 수도 있습니다는 CreateGraphics 에 대 한 참조를 가져오려면 폼 또는 컨트롤의 메서드는 Graphics 해당 폼 이나 컨트롤의 그리기 화면을 나타내는 개체입니다.You can also use the CreateGraphics method of a control or form to obtain a reference to a Graphics object that represents the drawing surface of that control or form.

CreateGraphics 메서드를 사용 하 여 그래픽 개체를 만들려면To create a Graphics object with the CreateGraphics method

  • 호출 된 CreateGraphics 기반이 그래픽을 렌더링 하려는 폼 이나 컨트롤의 메서드.Call the CreateGraphics method of the form or control upon which you want to render graphics.

    Dim g as Graphics  
    ' Sets g to a Graphics object representing the drawing surface of the  
    ' control or form g is a member of.  
    g = Me.CreateGraphics  
    
    Graphics g;  
    // Sets g to a graphics object representing the drawing surface of the  
    // control or form g is a member of.  
    g = this.CreateGraphics();  
    
    Graphics ^ g;  
    // Sets g to a graphics object representing the drawing surface of the  
    // control or form g is a member of.  
    g = this->CreateGraphics();  
    

이미지 개체에서 만들기Create from an Image Object

또한에서 파생 된 모든 개체에서 graphics 개체를 만들 수 있습니다는 Image 클래스입니다.Additionally, you can create a graphics object from any object that derives from the Image class.

이미지에서 Graphics 개체를 만들려면To create a Graphics object from an Image

  • 호출 된 Graphics.FromImage 를 만들려는 이미지 변수의 이름을 제공 하는 메서드는 Graphics 개체입니다.Call the Graphics.FromImage method, supplying the name of the Image variable from which you want to create a Graphics object.

    다음 예제에서는 사용 하는 방법을 보여 줍니다는 Bitmap 개체:The following example shows how to use a Bitmap object:

    Dim myBitmap as New Bitmap("C:\Documents and Settings\Joe\Pics\myPic.bmp")  
    Dim g as Graphics = Graphics.FromImage(myBitmap)  
    
    Bitmap myBitmap = new Bitmap(@"C:\Documents and   
       Settings\Joe\Pics\myPic.bmp");  
    Graphics g = Graphics.FromImage(myBitmap);  
    
    Bitmap ^ myBitmap = gcnew  
       Bitmap("D:\\Documents and Settings\\Joe\\Pics\\myPic.bmp");  
    Graphics ^ g = Graphics::FromImage(myBitmap);  
    

참고

만들 수 있습니다 Graphics 인덱싱되지 않은.bmp 파일을 16 비트, 24 비트 및 32 비트.bmp 파일 등의 개체입니다.You can only create Graphics objects from nonindexed .bmp files, such as 16-bit, 24-bit, and 32-bit .bmp files. 인덱싱되지 않은.bmp 파일의 각 픽셀 색 테이블에 인덱스를 저장 하는 인덱싱된.bmp 파일의 픽셀 달리 색을 보유 합니다.Each pixel of nonindexed .bmp files holds a color, in contrast to pixels of indexed .bmp files, which hold an index to a color table.

그리기 및 도형 및 이미지 조작Drawing and Manipulating Shapes and Images

를 만든 후를 Graphics 개체를 사용 하 여 선과 도형 그리기, 텍스트를 렌더링 하거나 표시 하 고 이미지를 조작할 수 있습니다.After it is created, a Graphics object may be used to draw lines and shapes, render text, or display and manipulate images. 사용 되는 보안 주체 개체는 Graphics 개체:The principal objects that are used with the Graphics object are:

  • Pen 클래스-선 그리기, 도형의 윤곽을 또는 기타 기하학적 표현을 렌더링에 사용 합니다.The Pen class—Used for drawing lines, outlining shapes, or rendering other geometric representations.

  • Brush 클래스-을 그래픽 채워진된 도형, 이미지, 텍스트 등의 영역을 채우는 데 사용 합니다.The Brush class—Used for filling areas of graphics, such as filled shapes, images, or text.

  • Font 클래스-텍스트를 렌더링할 때 사용할 도형에 대 한 설명을 제공 합니다.The Font class—Provides a description of what shapes to use when rendering text.

  • Color 구조-표시할 다른 색을 나타냅니다.The Color structure—Represents the different colors to display.

사용자가 만든 그래픽 개체를 사용 하려면To use the Graphics object you have created

참고자료See also