IWICBitmapFrameEncode::WriteSource メソッド (wincodec.h)
ビットマップ ソースをエンコードします。
構文
HRESULT WriteSource(
[in] IWICBitmapSource *pIBitmapSource,
[in] WICRect *prc
);
パラメーター
[in] pIBitmapSource
種類: IWICBitmapSource*
エンコードするビットマップ ソース。
[in] prc
種類: WICRect*
ビットマップ ソースのサイズ四角形。
戻り値
種類: HRESULT
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
解説
WriteSource を呼び出す前に SetSize が呼び出されない場合は、NULL でない場合は prc で指定されたサイズが使用されます。 それ以外の場合は、pIBitmapSource で指定された IWICBitmapSource のサイズが使用されます。
WriteSource を呼び出す前に SetPixelFormat が呼び出されない場合は、pIBitmapSource で指定された IWICBitmapSource のピクセル形式が使用されます。
WriteSource を呼び出す前に SetResolution が呼び出されない場合は、pIBitmapSource のピクセル形式が使用されます。
WriteSource を呼び出す前に SetPalette が呼び出されない場合、ターゲット ピクセル形式にインデックスが作成され、pIBitmapSource のピクセル形式がエンコーダー フレームのピクセル形式と一致すると、pIBitmapSource ピクセル形式が使用されます。
GIF イメージをエンコードするときに、グローバル パレットが設定されていて、フレーム レベル パレットがユーザーまたはカスタムの独立系ソフトウェア ベンダー (ISV) GIF コーデックによって直接設定されていない場合、 WriteSource はグローバル パレットを使用して、 pIBitmapSource にフレーム レベル パレットがある場合でもフレームをエンコードします。
Windows Vista 以降では、累積されたソースの rect の高さの合計が SetSize で設定されている場合と同じであれば、WriteSource 呼び出しを繰り返すことができます。
Windows 8.1以降では、ソースの rect は、少なくとも SetSize によって設定されるディメンションである必要があります。 ソースの rect 幅が SetSize 幅を超える場合、右側の余分なピクセルは無視されます。 ソースのctの高さが残りの未入力の高さを超える場合、下部の余分なスキャンラインは無視されます。
要件
サポートされている最小のクライアント | WINDOWS XP と SP2、Windows Vista [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | wincodec.h |
Library | Windowscodecs.lib |
[DLL] | Windowscodecs.dll |
関連項目
概念