GdiTransparentBlt

GdiTransparentBlt 関数は、指定されたソースデバイスコンテキストのピクセル矩形に対応するカラーデータのビットブロック転送を、デスティネーションデバイスコンテキストへ行う。

GdiTransparentBlt hdcDest, xoriginDest, yoriginDest, wDest, hDest, hdcSrc, xoriginSrc, yoriginSrc, wSrc, hSrc, crTransparent

hdcDest : [intptr] デスティネーションデバイスコンテキストのハンドル。
xoriginDest : [int] デスティネーション矩形の左上隅の x 座標(論理単位)。
yoriginDest : [int] デスティネーション矩形の左上隅の y 座標(論理単位)。
wDest : [int] デスティネーション矩形の幅(論理単位)。
hDest : [int] デスティネーション矩形の高さ(論理単位)。
hdcSrc : [intptr] ソースデバイスコンテキストのハンドル。
xoriginSrc : [int] ソース矩形の x 座標(論理単位)。
yoriginSrc : [int] ソース矩形の y 座標(論理単位)。
wSrc : [int] ソース矩形の幅(論理単位)。
hSrc : [int] ソース矩形の高さ(論理単位)。
crTransparent : [int] ソースビットマップ内で透明として扱う RGB カラー。

(プラグイン / モジュール : gdi32.dll)

解説

GdiTransparentBlt
関数は、指定されたソースデバイスコンテキストのピクセル矩形に対応するカラーデータのビットブロック転送を、デスティネーションデバイスコンテキストへ行う。

[戻り値]
関数が成功した場合、戻り値は TRUE である。失敗した場合は FALSE である。

[備考]
GdiTransparentBlt 関数は互換ビットマップ (DDB) で動作する。GdiTransparentBlt
関数はすべてのフォーマットのソースビットマップをサポートする。ただし 32bpp
ビットマップの場合、アルファ値をそのままコピーする。透明度付きの 32 ビット/ピクセルビットマップを指定するには AlphaBlend
を使用すること。ソース矩形とデスティネーション矩形のサイズが異なる場合、ソースビットマップはデスティネーション矩形に合うように伸縮される。SetStretchBltMode
関数を使用する場合、BLACKONWHITE および WHITEONBLACK の iStretchMode は
GdiTransparentBlt 関数では COLORONCOLOR
に変換される。デスティネーションデバイスコンテキストはデスティネーション座標の変換種別を指定し、ソースデバイスコンテキストはソース座標の変換種別を指定する。GdiTransparentBlt
は、ソースまたはデスティネーションの幅あるいは高さが負であってもビットマップをミラーリングしない。マルチモニターシステムで使用する場合、hdcSrc
と hdcDest は同じデバイスを参照している必要があり、そうでないと関数は失敗する。異なるデバイスの DC
間でデータを転送するには、GetDIBits を呼び出してメモリビットマップを DIB に変換する。2 つ目のデバイスに DIB
を表示するには、SetDIBits または StretchDIBits を呼び出す。

情報

プラグイン / モジュールgdi32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の gdi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_gdi32_gen2.hs