圖形作業 (C++/CLI)

示範使用 Windows SDK 進行影像操作。

下列主題示範 System.Drawing.Image 如何使用 類別來執行影像操作。

使用 .NET Framework 顯示影像

下列程式碼範例會修改 On小畫家 事件處理常式,以擷取主表單物件的指標 Graphics 。 函 OnPaint 式適用于 Windows Forms 應用程式,最有可能使用 Visual Studio 應用程式精靈建立。

影像是由 Image 類別表示。 影像資料會使用 System.Drawing.Image.FromFile 方法從 .jpg 檔案載入。 在影像繪製到表單之前,表單會調整大小以容納影像。 影像的繪製會使用 System.Drawing.Graphics.DrawImage 方法執行。

GraphicsImage 類別都在 命名空間中 System.Drawing

範例

#using <system.drawing.dll>

using namespace System;
using namespace System::Drawing;

protected:
virtual Void Form1::OnPaint(PaintEventArgs^ pe) override
{
    Graphics^ g = pe->Graphics;
    Image^ image = Image::FromFile("SampleImage.jpg");
    Form::ClientSize = image->Size;
    g->DrawImage( image, 0, 0, image->Size.Width, image->Size.Height );
}

使用 .NET Framework 繪製圖形

下列程式碼範例會 Graphics 使用 類別來修改 OnPaint 事件處理常式,以擷取主要表單物件的指標 Graphics 。 接著,此指標會用來設定表單的背景色彩,並使用 和 DrawArc 方法繪製線條和弧線 System.Drawing.Graphics.DrawLine

範例

#using <system.drawing.dll>
using namespace System;
using namespace System::Drawing;
// ...
protected:
virtual Void Form1::OnPaint(PaintEventArgs^ pe ) override
{
   Graphics^ g = pe->Graphics;
   g->Clear(Color::AntiqueWhite);

   Rectangle rect = Form::ClientRectangle;
   Rectangle smallRect;
   smallRect.X = rect.X + rect.Width / 4;
   smallRect.Y = rect.Y + rect.Height / 4;
   smallRect.Width = rect.Width / 2;
   smallRect.Height = rect.Height / 2;

   Pen^ redPen = gcnew Pen(Color::Red);
   redPen->Width = 4;
   g->DrawLine(redPen, 0, 0, rect.Width, rect.Height);

   Pen^ bluePen = gcnew Pen(Color::Blue);
   bluePen->Width = 10;
   g->DrawArc( bluePen, smallRect, 90, 270 );
}

使用 .NET Framework 輪替映射

下列程式碼範例示範 如何使用 System.Drawing.Image 類別從磁片載入映射、旋轉 90 度,並將它儲存為新的 .jpg 檔案。

範例

#using <system.drawing.dll>

using namespace System;
using namespace System::Drawing;

int main()
{
   Image^ image = Image::FromFile("SampleImage.jpg");
   image->RotateFlip( RotateFlipType::Rotate90FlipNone );
   image->Save("SampleImage_rotated.jpg");
   return 0;
}

使用 .NET Framework 轉換圖像檔案格式

下列程式碼範例示範 System.Drawing.Image 用來轉換和儲存圖像檔的 System.Drawing.Imaging.ImageFormat 類別和列舉。 下列程式碼會從 .jpg 檔案載入影像,然後將它儲存在 .gif 和 .bmp 檔案格式中。

範例

#using <system.drawing.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::Drawing::Imaging;

int main()
{
   Image^ image = Image::FromFile("SampleImage.jpg");
   image->Save("SampleImage.png", ImageFormat::Png);
   image->Save("SampleImage.bmp", ImageFormat::Bmp);

   return 0;
}

圖形程式設計入門

關於 GDI+ Managed 程式碼

另請參閱

以 C++/CLI 進行 .NET 程式設計 (Visual C++)

System.Drawing