Graphics.FromImage(Image) メソッド

定義

指定した Image の新しい Graphics を作成します。

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

新しい Graphics の作成元の Image

戻り値

このメソッドは、指定した Graphics の新しい Image を返します。

例外

imagenullです。

image がインデックス付きのピクセル形式であるか、またはその形式が未定義です。

次のコード例は、Windows フォームで使用するように設計されており、イベント ハンドラーのPaintパラメーターである が必要PaintEventArgseです。 このコードでは、次のアクションが実行されます。

  • Imageサンプル フォルダー内のグラフィックス ファイル SampImag.jpgから を作成します。

  • から を Graphics 作成します Image

  • 画像内の四角形を塗りつぶして画像を変更します。

  • Image 画面に描画します。

  • 作成 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

注釈

画像にインデックス付きピクセル形式が設定されている場合、このメソッドは"インデックス付きピクセル形式の画像からグラフィックス オブジェクトを作成できません" というメッセージを含む例外をスローします。インデックス付きピクセル形式を次の一覧に示します。

メソッドを使用してインデックス付きイメージを別の Save(String, ImageFormat) 形式として保存し、新しいイメージのオブジェクトを取得 Graphics できます。

このメソッドは、画像に次のいずれかのピクセル形式がある場合にも例外をスローします。

メソッドによって作成された および 関連リソースを Dispose 解放するには、 Graphics 常に メソッドを呼び出す FromImage 必要があります。

適用対象

こちらもご覧ください