繪圖、定位和複製影像
您可以使用 Image 類別來載入和顯示點陣影像(點陣影像)和向量影像(元檔)。 若要顯示影像,您需要 Graphics 物件和 Image 物件。 Graphics 物件會提供 Graphics::D rawImage 方法,此方法會接收 Image 物件的位址做為自變數。
下列範例會從檔案 Climber.jpg 建構 Image 對象,然後顯示影像。 影像左上角 (10, 10) 的目的地是在 Graphics::DrawImage 方法的第二和第三個參數中指定的。
Image myImage(L"Climber.jpg");
myGraphics.DrawImage(&myImage, 10, 10);
上述程式代碼以及特定檔案 Climber.jpg會產生下列輸出。
包含相片
您可以從各種圖形檔格式建構 Image 物件:BMP、GIF、JPEG、Exif、PNG、TIFF、WMF、EMF 和 ICON。
下列範例會從各種文件類型建構 Image 對象,然後顯示影像。
Image myBMP(L"SpaceCadet.bmp");
Image myEMF(L"Metafile1.emf");
Image myGIF(L"Soda.gif");
Image myJPEG(L"Mango.jpg");
Image myPNG(L"Flowers.png");
Image myTIFF(L"MS.tif");
myGraphics.DrawImage(&myBMP, 10, 10);
myGraphics.DrawImage(&myEMF, 220, 10);
myGraphics.DrawImage(&myGIF, 320, 10);
myGraphics.DrawImage(&myJPEG, 380, 10);
myGraphics.DrawImage(&myPNG, 150, 200);
myGraphics.DrawImage(&myTIFF, 300, 200);
Image 類別提供 Image::Clone 方法,可用來建立現有 Image、Metafile或 Bitmap 物件的複本。 Clone 方法在 Bitmap 類別中被重載,其中一個版本具有 source-rectangle 參數,可以用來指定您想要複製的原始圖像部分。 下列範例會複製現有 Bitmap 物件的上半部,以建立 Bitmap 物件。 然後會顯示這兩個影像。
Bitmap* originalBitmap = new Bitmap(L"Spiral.png");
RectF sourceRect(
0.0f,
0.0f,
(REAL)(originalBitmap->GetWidth()),
(REAL)(originalBitmap->GetHeight())/2.0f);
Bitmap* secondBitmap = originalBitmap->Clone(sourceRect, PixelFormatDontCare);
myGraphics.DrawImage(originalBitmap, 10, 10);
myGraphics.DrawImage(secondBitmap, 100, 10);
上述程式代碼以及特定檔案 Spiral.png會產生下列輸出。
圖片的