IGetFrame::SetFormat メソッド (vfw.h)

SetFormat メソッドは、抽出されるフレームの圧縮解除されたイメージ形式を設定し、必要に応じて圧縮解除操作用のバッファーを提供します。

構文

HRESULT SetFormat(
  LPBITMAPINFOHEADER lpbi,
  LPVOID             lpBits,
  int                x,
  int                y,
  int                dx,
  int                dy
);

パラメーター

lpbi

圧縮解除されたイメージ形式を定義する BITMAPINFOHEADER 構造体へのポインター。 NULL またはこの パラメーターの値 ((LPBITMAPINFOHEADER) 1) を指定することもできます。 NULL を 指定すると、圧縮解除ツールは編集に適した形式 (通常は 24 ビットのイメージ深度形式) を選択します。 値 ((LPBITMAPINFOHEADER) 1) を指定すると、圧縮解除ツールは現在の表示モードに適した形式を選択します。

lpBits

圧縮解除されたイメージ データを格納するバッファーへのポインター。 このメソッドでバッファーを割り当てるには 、NULL を 指定します。

x

lpbi で指定された DIB 内の変換先の四角形の x 座標。 このパラメーターは、 lpBits が NULL でない場合に使用 されます

y

lpbi で指定された DIB 内の移動先の四角形の y 座標。 このパラメーターは、 lpBits が NULL でない場合に使用 されます

dx

コピー先の四角形の幅。 このパラメーターは、 lpBits が NULL でない場合に使用 されます

dy

移動先の四角形の高さ。 このパラメーターは、 lpBits が NULL でない場合に使用 されます

戻り値

成功した場合は NOERROR を返 、圧縮解除されたイメージがバッファー サイズより大きい場合はE_OUTOFMEMORY、それ以外の場合は E_FAIL 返します。

解説

xydxdy パラメーターは、圧縮解除されたイメージを受け取る lpbi および lpBits によって指定されたビットマップの部分を識別します。

C++ で記述されたハンドラーの場合、 SetFormat には次の構文があります。


HRESULT SetFormat(LPBITMAPINFOHEADER lpbi, LPVOID lpBits, int x, 
    int y, int dx, int dy); 
 

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー vfw.h
Library Vfw32.lib

関連項目

カスタム ファイルおよびストリーム ハンドラー インターフェイス

カスタム ファイル ハンドラーとストリーム ハンドラー