TransparentBlt 函式 (wingdi.h)
TransparentBlt 函式會執行與指定來源裝置內容圖元矩形相對應的色彩數據位區塊傳輸至目的地裝置內容。
語法
BOOL TransparentBlt(
[in] HDC hdcDest,
[in] int xoriginDest,
[in] int yoriginDest,
[in] int wDest,
[in] int hDest,
[in] HDC hdcSrc,
[in] int xoriginSrc,
[in] int yoriginSrc,
[in] int wSrc,
[in] int hSrc,
[in] UINT crTransparent
);
參數
[in] hdcDest
目的地裝置內容的句柄。
[in] xoriginDest
目的地矩形左上角的 X 座標,以邏輯單位表示。
[in] yoriginDest
目的地矩形左上角的 Y 座標,以邏輯單位表示。
[in] wDest
目的地矩形的寬度,以邏輯單位表示。
[in] hDest
目的地矩形的高度,以邏輯單位表示。
[in] hdcSrc
來源裝置內容的句柄。
[in] xoriginSrc
來源矩形的 X 座標,以邏輯單位表示。
[in] yoriginSrc
來源矩形的 Y 座標,以邏輯單位表示。
[in] wSrc
來源矩形的寬度,以邏輯單位表示。
[in] hSrc
來源矩形的高度,以邏輯單位表示。
[in] crTransparent
來源位圖中要視為透明的 RGB 色彩。
傳回值
如果函式成功,則傳回值為 TRUE。
如果函式失敗,傳回值為 FALSE。
備註
TransparentBlt 函式可與相容的點陣圖搭配運作, (DDB) 。
TransparentBlt 函式支援來源位圖的所有格式。 不過,針對 32 個 bpp 位圖,它只會複製 Alpha 值。 使用 AlphaBlend 來指定32位像素點圖與透明度。
如果來源和目的地矩形的大小不相同,則會延展來源位圖以符合目的矩形。 使用 SetStretchBltMode 函式時,BlackONWHITE 和 WHITEONBLACK 的 iStretchMode 模式會轉換成 TransparentBlt 函式的 COLORONCOLOR。
目的地裝置內容會指定目的地座標的轉換類型。 來源裝置內容會指定來源座標的轉換類型。
如果來源或目的地的寬度或高度為負數,TransparentBlt 不會鏡像位圖。
在多個監視器系統中使用時, hdcSrc 和 hdcDest 都必須參考相同的裝置,否則函式將會失敗。 若要在不同裝置的 DC 之間傳輸數據,請呼叫 GetDIBits,將記憶體位圖轉換成 DIB。 若要向第二個裝置顯示 DIB,請呼叫 SetDIBits 或 StretchDIBits。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | wingdi.h (包含 Windows.h) |
程式庫 | Msimg32.lib |
Dll | Msimg32.dll |