指定したデバイス独立ビットマップ(DIB)のデータを、指定したデバイス コンテキストに描画します。描画の際にビットマップを拡大、縮小することができます。
定義
Declare Function StretchDIBits Lib "gdi32" _
(hdc As HDC, _
XDest As Long, _
YDest As Long, _
nDestWidth As Long, _
nDestHeight As Long, _
XSrc As Long, _
YSrc As Long, _
nSrcWidth As Long, _
nSrcHeight As Long, _
lpBits As VoidPtr, _
ByRef lpBitsInfo As BITMAPINFO, _
iUsage As Long, _
dwRop As DWord) As Long
hdc
デバイス コンテキストのハンドルを指定します。
XDest
コピー先長方形領域の左上隅の X 座標を指定します。
YDest
コピー先長方形領域の左上隅の Y 座標を指定します。
nDestWidth
コピー先長方形領域の幅を指定します。
nDestHeight
コピー先長方形領域の高さを指定します。
XSrc
コピー元長方形領域の左上隅の X 座標を指定します。
YSrc
コピー元長方形領域の左上隅の Y 座標を指定します。
nSrcWidth
コピー元長方形領域の幅を指定します。
nSrcHeight
コピー元長方形領域の高さを指定します。
lpBits
DIB のビットデータが格納されているバッファへのポインタを指定します。
lpBitsInfo (ポインタ参照)
lpBits パラメータで指定したビットマップに関する情報が格納されている、BITMAPINFO構造体へのポインタを指定します。
iUsage
lpBitsInfo パラメータで指定した BITMAPINFO 構造体の bmiColors メンバの形式を、以下の定数から指定します。
定数 | 説明 |
DIB_PAL_COLORS | カラーテーブルは、現在の論理パレットへの 16 ビットのインデックスの配列です。 |
DIB_RGB_COLORS | カラーテーブルは、RGB 値そのものです。 |
dwRop
ラスタオペレーションを以下の定数から指定します。
定数 | 説明 |
BLACKNESS | 物理パレットのインデックス 0 に対応する色(デフォルトは黒)で、コピー先の長方形を塗りつぶします。 |
DSTINVERT | コピー先長方形の色を反転します。 |
MERGECOPY | コピー元の色と、コピー先の色を、AND 演算で結合します。 |
MERGEPAINT | コピー元の色を反転した色と、コピー先の色を、OR 演算で結合します。 |
NOTSRCCOPY | コピー元の色を反転して、コピー先にコピーします。 |
NOTSRCERASE | コピー元の色と、コピー先の色を、OR 演算したものを、さらに反転します。 |
PATCOPY | コピー元で選択されているパターンを、コピー先にコピーします。 |
PATINVERT | コピー元で選択されているパターンの色と、コピー先の色を、XOR 演算で結合します。 |
PATPAINT | コピー元で選択されているパターンの色と、コピー先の色を反転した色を、OR 演算で結合し、さらにその結果を、コピー先の色と OR 演算で結合します。 |
SRCAND | コピー元の色と、コピー先の色を、AND 演算で結合します。 |
SRCCOPY | コピー元の色を、コピー先にそのままコピーします。 |
SRCERASE | コピー元の色と、コピー先の色を反転した色を、AND 演算で結合します。 |
SRCINVERT | コピー元の色と、コピー先の色を、XOR 演算で結合します。 |
SRCPAINT | コピー元の色と、コピー先の色を、OR 演算で結合します。 |
WHITENESS | 物理パレットのインデックス 1 に対応する色(デフォルトは白)で、コピー先の長方形を塗りつぶします。 |
戻り値
関数が成功すると、コピーした走査行の数が返ります。失敗すると、GDI_ERROR が返ります。
戻り値
この関数を使用する前に、SetStretchBltMode関数を使用して伸縮モードを指定しておいて下さい。
環境情報
インクルード ファイル: api_gdi.sbp 内で定義済み
DLLファイル: gdi32.dll
SetStretchBltMode関数、BITMAPINFO構造体