共用方式為


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

要從中建立新 GraphicsImage

傳回

這個方法會傳回指定之 Image的新 Graphics

例外狀況

image null

image 具有索引像素格式或其格式未定義。

範例

下列程式代碼範例是專為搭配 Windows Forms 使用而設計,而且需要 PaintEventArgse,這是 Paint 事件處理程式的參數。 程式代碼會執行下列動作:

  • 從範例資料夾中的圖形檔案 SampImag.jpg 建立 Image

  • Image建立 Graphics

  • 藉由在影像中填滿矩形來改變影像。

  • 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

備註

如果影像具有已編製索引的圖元格式,這個方法會擲回含有訊息的例外狀況:「無法從具有索引圖元格式的影像建立 Graphics 物件」。索引像素格式會顯示在下列清單中。

您可以使用 Save(String, ImageFormat) 方法來將索引影像儲存為另一種格式,然後擷取新影像的 Graphics 物件。

如果影像具有下列任何像素格式,這個方法也會擲回例外狀況。

您應該一律呼叫 Dispose 方法來釋放 FromImage 方法所建立的 Graphics 和相關資源。

適用於

另請參閱