Graphics.FromImage(Image) Graphics.FromImage(Image) Graphics.FromImage(Image) Method

정의

지정된 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

매개 변수

image
Image Image Image

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

반환

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

예외

imagenull인 경우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 예제 폴더에 파일 예제 그래픽에서.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.

적용 대상

추가 정보