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


指定した Graphics の新しい Image を作成します。Creates a new Graphics from the specified Image.

 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 の作成元の GraphicsImage 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 フォームで使用するために設計されています。 また必要が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.

   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.
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.
End Sub


イメージに、インデックス付きピクセル形式がある場合は、このメソッドは、メッセージで例外をスロー、「グラフィックス オブジェクトをインデックス付きピクセル形式をもつイメージから作成できません」です。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.

このメソッドは、イメージのピクセル形式を次のいずれかの場合も、例外をスローします。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.