Graphics.FromImage(Image) 메서드

정의

지정된 Graphics에서 새 Image를 만듭니다.Creates a new Graphics from the specified Image.

public:
 static System::Drawing::Graphics ^ FromImage(System::Drawing::Image ^ image);
public static System.Drawing.Graphics FromImage (System.Drawing.Image image);
static member FromImage : System.Drawing.Image -> System.Drawing.Graphics
Public Shared Function FromImage (image As Image) As Graphics

매개 변수

image
Image

Image를 만들 Graphics입니다.Image from which to create the new Graphics.

반환

Graphics

이 메서드는 지정된 Graphics에 대한 새 Image를 반환합니다.This method returns a new Graphics for the specified Image.

예외

image이(가) null인 경우image is null.

image에 인덱싱된 픽셀 형식이 있거나 형식이 정의되어 있지 않는 경우image has an indexed pixel format or its format is undefined.

예제

다음 코드 예제는 Windows Forms와 함께 사용 하도록 설계 되었으며 PaintEventArgs e 이벤트 처리기의 매개 변수인가 필요 합니다 Paint .The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. 코드는 다음 작업을 수행 합니다.The code performs the following action:

  • Image예제 폴더에 SampImag.jpg 그래픽 파일에서를 만듭니다.Creates an Image from a graphics file SampImag.jpg in the example folder.

  • 에서를 만듭니다 Graphics Image .Creates a Graphics from the Image.

  • 사각형 안에 사각형을 채워서 이미지를 변경 합니다.Alters the image by filling a rectangle within it.

  • Image 화면에 그립니다.Draws the Image to the screen.

  • 만든을 해제 합니다 Graphics .Releases the created Graphics.

public:
   void FromImageImage( PaintEventArgs^ e )
   {
      // Create image.
      Image^ imageFile = Image::FromFile( "SampImag.jpg" );

      // Create graphics object for alteration.
      Graphics^ newGraphics = Graphics::FromImage( imageFile );

      // Alter image.
      newGraphics->FillRectangle( gcnew SolidBrush( Color::Black ), 100, 50, 100, 100 );

      // Draw image to screen.
      e->Graphics->DrawImage( imageFile, PointF(0.0F,0.0F) );

      // Dispose of graphics object.
      delete newGraphics;
   }
private void FromImageImage(PaintEventArgs e)
{

    // Create image.
    Image imageFile = Image.FromFile("SampImag.jpg");

    // Create graphics object for alteration.
    Graphics newGraphics = Graphics.FromImage(imageFile);

    // Alter image.
    newGraphics.FillRectangle(new SolidBrush(Color.Black), 100, 50, 100, 100);

    // Draw image to screen.
    e.Graphics.DrawImage(imageFile, new PointF(0.0F, 0.0F));

    // Dispose of graphics object.
    newGraphics.Dispose();
}
Private Sub FromImageImage2(ByVal e As PaintEventArgs)

    ' Create image.
    Dim imageFile As Image = Image.FromFile("SampImag.jpg")

    ' Create graphics object for alteration.
    Dim newGraphics As Graphics = Graphics.FromImage(imageFile)

    ' Alter image.
    newGraphics.FillRectangle(New SolidBrush(Color.Black), _
    100, 50, 100, 100)

    ' Draw image to screen.
    e.Graphics.DrawImage(imageFile, New PointF(0.0F, 0.0F))

    ' Dispose of graphics object.
    newGraphics.Dispose()
End Sub

설명

이미지에 인덱싱된 픽셀 형식이 있는 경우이 메서드는 "인덱싱된 픽셀 형식이 있는 이미지에서 그래픽 개체를 만들 수 없습니다." 라는 메시지와 함께 예외를 throw 합니다.If the image has an indexed pixel format, this method throws an exception with the message, "A Graphics object cannot be created from an image that has an indexed pixel format." 인덱싱된 픽셀 형식이 다음 목록에 표시 됩니다.The indexed pixel formats are shown in the following list.

메서드를 사용 하 여 인덱싱된 이미지를 다른 형식으로 저장 한 Save(String, ImageFormat) 다음 Graphics 새 이미지에 대 한 개체를 검색할 수 있습니다.You can save the indexed image as another format by using the Save(String, ImageFormat) method and then retrieve a Graphics object for the new image.

또한이 메서드는 이미지에 다음 픽셀 형식이 있는 경우 예외를 throw 합니다.This method also throws an exception if the image has any of the following pixel formats.

메서드에 Dispose Graphics 의해 생성 된 및 관련 리소스를 해제 하려면 메서드를 항상 호출 해야 합니다 FromImage .You should always call the Dispose method to release the Graphics and related resources created by the FromImage method.

적용 대상