C++のStretchBlt関数は、ビットマップイメージの一部を別のビットマップイメージにコピーし、必要に応じてストレッチまたは縮小します。

C++のstretchblt関数はGDI(グラフィカルデバイスインターフェイス)ライブラリ関数の一つで、ビットマップをソースデバイスコンテキスト(例: 画面やビットマップ)からターゲットデバイスコンテキスト(例: ウィンドウや別のビットマップ)にコピーする際に、拡大縮小および引き伸ばし操作を行うことができます。

stretchblt関数は、ソースビットマップの内容を指定した目的矩形のサイズに拡大、縮小または引き伸ばして、目的デバイスのコンテキストに結果をコピーします。

StretchBlt関数のプロトタイプは以下の通りです。
BOOL StretchBlt(
HDC hdcDest, // 目標デバイスのDCハンドル
int nXOriginDest, // 目標矩形の左上隅のX座標
int nYOriginDest, // 目標矩形の左上隅のY座標
int nWidthDest, // 目標矩形の幅
int nHeightDest, // 目標矩形の高さ
HDC hdcSrc, // ソースデバイスのDCハンドル
int nXOriginSrc, // ソース矩形の左上隅のX座標
int nYOriginSrc, // ソース矩形の左上隅のY座標
int nWidthSrc, // ソース矩形の幅
int nHeightSrc, // ソース矩形の高さ
DWORD dwRop // ラスター操作コード
);

HDC hdcDest はターゲット デバイス コンテキスト ハンドルで、結果を表示するデバイスを表す。nXOriginDest と nYOriginDest はターゲット矩形の左上隅の X 座標と Y 座標。nWidthDest と nHeightDest はターゲット矩形の幅と高さ。

hdcSrcとは、コピーの元のビットマップがあるデバイスを表すソース・デバイスのデバイスコンテキストのハンドル;nXOriginSrc、nYOriginSrcは、ソース・矩形の左上隅のX座標、Y座標;nWidthSrc、nHeightSrcは、ソース・矩形の幅、高さ。

dwRopはラスター操作コードで、ソースビットマップとターゲットビットマップをどのように合成するかを指定します。ラスター操作コードは、透過、ブレンド、オーバーレイなどのエフェクトの実現に使用できます。

総合すると、stretchblt 関数は、ソースビットマップをターゲットデバイスコンテキストに複製するもので、拡大縮小できる。

bannerAds