繪製、定位和複製影像
您可以使用 Image 類別,在點陣圖) 和向量影像 (載入和顯示點陣影像, (中繼檔) 。 若要顯示影像,您需要 Graphics 物件和 Image 物件。 Graphics物件會提供Graphics::D rawImage方法,此方法會接收Image物件的位址做為引數。
下列範例會從檔案Climber.jpg建構 Image 物件,然後顯示影像。 影像左上角的目的地點 (10,10) 指定于 Graphics::D rawImage 方法的第二和第三個參數中。
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類別中多載,其中一個變化具有來源矩形參數,可用來指定您想要複製的原始影像部分。 下列範例會藉由複製現有 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會產生下列輸出。