3.3.3 在屏幕上繪制位圖
準備好Bitmap對象以后,就可以將它繪制到屏幕上了,這里需要使用Graphics.DrawImage函數,參見程序清單3-10。
程序清單3-10 在屏幕上繪制位圖
private void MyForm_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawImage(myBitmap, 50, 50);
}
這段代碼將一個位圖圖像的副本繪制在窗體的(50,50)坐標處。該坐標為圖像左上角所在的位置。
在調用DrawImage函數時,還可以利用一些附加功能,所以接下來我們就看看這些功能。
1. 復制部分位圖
程序清單3-10中的例子只是簡單地使用GDI將整個位圖圖像復制到窗體的某個點上。我們還可以只將位圖的一個子部分顯示到屏幕上。這樣我們利用一個圖像就能夠創(chuàng)建一個多幀動畫,然后按順序將每一幀復制到屏幕上(如圖3-13所示)。
圖3-13 在一個單獨的圖形文件中保存多幀動畫中的每一幀
當調用DrawImage函數時,如果提供兩個矩形對象參數,就可以只復制原圖像的一個子部分:第一個參數定義了輸出圖像的位置和尺寸,第二個參數指定了從原位圖中所要復制的圖像的位置和尺寸。
在如圖3-13所示的動畫幀中,每個圖像都是75×75像素。因此我們可以復制動畫中的每一幀,參見程序清單3-11。