Share via


SetStretchBltMode 関数 (wingdi.h)

SetStretchBltMode 関数は、指定したデバイス コンテキストでビットマップ ストレッチ モードを設定します。

構文

int SetStretchBltMode(
  [in] HDC hdc,
  [in] int mode
);

パラメーター

[in] hdc

デバイス コンテキストへのハンドル。

[in] mode

ストレッチ モード。 このパラメーターには、次の値のいずれかを指定できます。

意味
BLACKONWHITE
削除されたピクセルと既存のピクセルの色の値を使用して、ブール値 AND 演算を実行します。 ビットマップがモノクロ ビットマップの場合、このモードでは白ピクセルを犠牲にして黒ピクセルが保持されます。
COLORONCOLOR
ピクセルを削除します。 このモードでは、削除されたすべてのピクセル行が、情報を保持せずに削除されます。
ハーフトーン
ソース四角形のピクセルを、コピー先の四角形のピクセル ブロックにマップします。 ピクセルのコピー先ブロックの平均色は、ソース ピクセルの色に近似します。

HALFTONE ストレッチ モードを設定した後、アプリケーションは SetBrushOrgEx 関数を呼び出してブラシの原点を設定する必要があります。 失敗した場合は、ブラシのずれが発生します。

STRETCH_ANDSCANS
BLACKONWHITE と同じです。
STRETCH_DELETESCANS
COLORONCOLOR と同じです。
STRETCH_HALFTONE
HALFTONE と同じです。
STRETCH_ORSCANS
WHITEONBLACK と同じです。
WHITEONBLACK
削除されたピクセルと既存のピクセルの色値を使用して、ブール値 OR 演算を実行します。 ビットマップがモノクロ ビットマップの場合、このモードでは黒ピクセルを犠牲にして白ピクセルが保持されます。

戻り値

関数が成功した場合、戻り値は前のストレッチ モードです。

関数が失敗した場合は、0 を返します。

この関数は、次の値を返すことができます。

リターン コード 説明
ERROR_INVALID_PARAMETER
1 つ以上の入力パラメーターが無効です。

注釈

ストレッチ モードは、アプリケーションが StretchBlt 関数を呼び出すときに、ビットマップの行または列をディスプレイ デバイス上の既存のピクセルと組み合わせる方法を定義します。

BLACKONWHITE (STRETCH_ANDSCANS) モードと WHITEONBLACK (STRETCH_ORSCANS) モードは、通常、モノクロ ビットマップの前景ピクセルを保持するために使用されます。 COLORONCOLOR (STRETCH_DELETESCANS) モードは、通常、カラー ビットマップの色を保持するために使用されます。

HALFTONEモードは遅く、他の3つのモードよりもソースイメージの処理が必要です。しかし、より高品質の画像を生成します。 また、ブラシのずれを防ぐために、HALFTONE モードを設定した後に SetBrushOrgEx を呼び出す必要があることにも注意してください。

デバイス ドライバーの機能によっては、追加のストレッチ モードを使用することもできます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wingdi.h (Windows.h を含む)
Library Gdi32.lib
[DLL] Gdi32.dll

こちらもご覧ください

ビットマップ関数

ビットマップの概要

GetStretchBltMode

SetBrushOrgEx

Stretchblt