CDC::StretchBlt
複製來源矩形的點陣圖的目的矩形,必要時,自動縮放或壓縮點陣圖至適合目的矩形的維度。
BOOL StretchBlt(
int x,
int y,
int nWidth,
int nHeight,
CDC* pSrcDC,
int xSrc,
int ySrc,
int nSrcWidth,
int nSrcHeight,
DWORD dwRop
);
參數
x
指定 X 座標 (以邏輯單位 (Logical Unit) 的目的矩形的左上角。y
指定 Y 座標 (以邏輯單位 (Logical Unit) 的目的矩形的左上角。nWidth
指定寬度 (以邏輯單位 (Logical Unit) 的目的矩形。nHeight
指定高度 (以邏輯單位 (Logical Unit) 目的矩形。pSrcDC
指定來源裝置內容。xSrc
指定 X 座標 (以邏輯單位 (Logical Unit) 來源矩形的左上角。ySrc
指定 X 座標 (以邏輯單位 (Logical Unit) 來源矩形的左上角。nSrcWidth
指定寬度 (以邏輯單位 (Logical Unit) 的來源矩形。nSrcHeight
指定高度 (以邏輯單位 (Logical Unit) 來源矩形。dwRop
指定要執行的光柵作業。 光柵作業程式碼定義 GDI 如何合併在涉及一個目前筆刷、一個可能的來源點陣圖和目的點陣圖的 I/O 作業的色彩。 這個參數可以是下列其中一個值:BLACKNESS 關閉所有輸出黑色。
DSTINVERT 反轉目的點陣圖。
使用布林值 AND 運算子,MERGECOPY 合併模式和來源點陣圖。
使用布林值或運算子,MERGEPAINT 合併逆轉之來源點陣圖與目的點陣圖。
NOTSRCCOPY 複製所轉換的來源點陣圖至目的端。
使用布林值或運算子,NOTSRCERASE 反轉合併目的和來源點陣圖的結果。
PATCOPY 複製樣式至目的點陣圖。
使用布林值 (Boolean) XOR 運算子,PATINVERT 合併目的點陣圖與這個模式。
使用布林值或運算子,PATPAINT 合併逆轉之來源點陣圖的樣式。 使用布林值或運算子,合併這個作業的結果和目的點陣圖的。
使用布林值 AND 運算子,SRCAND 合併目的和來源點陣圖的像素。
SRCCOPY 複寫來源點陣圖為目的點陣圖。
使用布林值 AND 運算子,SRCERASE 反轉目的點陣圖和合併結果與來源點陣圖。
使用布林值 (Boolean) XOR 運算子,SRCINVERT 合併目的和來源點陣圖的像素。
使用布林值或運算子,SRCPAINT 合併目的和來源點陣圖的像素。
WHITENESS 關閉所有輸出白色。
傳回值
如果不是零,則會先繪製點陣圖,則為 0。
備註
函式使用目的裝置內容 (集合的自動縮放模式 SetStretchBltMode) 決定如何自動縮放或壓縮點陣圖。
StretchBltpSrcDC 函式從指定的來源裝置移動點陣圖成員函式呼叫的裝置內容 (由物件表示的目的裝置。 xSrc、 ySrc、 nSrcWidth和 nSrcHeight 參數定義來源矩形的左上角的位置和維度。 x、 y、 nWidth和 nHeight 參數指定目的端矩形的左上角的位置和維度。 指定的 dwRop 光柵作業定義來源點陣圖和位元已在目的裝置的組合方式。
如果 nSrcWidth 的標記和 nWidth 或 nSrcHeight 和 nHeight 參數不同, StretchBlt 函式建立點陣圖的鏡像。 如果 nSrcWidth 和 nWidth 具有不同的標記,函式會建立點陣圖的鏡像沿著 X 軸的。 如果 nSrcHeight 和 nHeight 具有不同的標記,函式會建立點陣圖的鏡像沿著 Y 軸的。
StretchBlt 函式自動縮放或壓縮記憶體中的來源點陣圖然後複製結果至目的端。 如果樣式合併的結果,則不會合併,直到自動縮放的來源點陣圖複製到目的端。 如果使用筆刷是,則這個選項的筆刷在目的裝置内容。 目的座標以目的裝置内容中被轉換,來源座標以來源裝置內容被轉換。
如果目的、來源和樣式點陣圖沒有相同的色彩格式, StretchBlt 轉換來源和樣式點陣圖符合目的點陣圖。 目的裝置内容的前景和背景色彩來轉換。
如果 StretchBlt 必須轉換單色點陣圖色彩,則會將空白欄位 (1) 成與黑色 (0 位元) 的前景色彩。 若要將色彩轉換為為黑白相片,其設定為符合背景色彩為白色 (1) 的像素並將其他像素 0 (黑色)。 使用裝置內容的前景和背景色彩中的色彩。
並非所有的裝置支援 StretchBlt 函式。 若要判斷裝置是否支援 StretchBlt,請呼叫 RASTERCAPS 索引的 GetDeviceCaps 成員函式並檢查傳回值 RC_STRETCHBLT 旗標。
需求
Header: afxwin.h