IWICProgressiveLevelControl::GetLevelCount メソッド (wincodec.h)

CODEC でサポートされているプログレッシブ デコードのレベルの数を取得します。

構文

HRESULT GetLevelCount(
  [out, retval] UINT *pcLevels
);

パラメーター

[out, retval] pcLevels

型: UINT*

CODEC でサポートされているレベルの数を示します。

戻り値

型: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

解説

ユーザーは、この関数を使用して、プログレッシブ JPEG 画像のプログレッシブ レベルを反復処理しないでください。 JPEG プログレッシブ レベルは画像によって決定され、固定レベル数はありません。 このメソッドを使用すると、すべてのプログレッシブ レベルがダウンロードされるまでアプリケーションが強制的に待機してから、戻ることができます。 代わりに、アプリケーションでは次のコードを使用して、プログレッシブ JPEG イメージのプログレッシブ レベルを反復処理する必要があります。

IWICProgressiveLevelControl *pProgressive = NULL;

HRESULT hr = (pBitmapFrame->QueryInterface(
   IID_IWICProgressiveLevelControl, 
   (void**) &pProgressive));
                
if (SUCCEEDED(hr))
{
   for (UINT uCurrentLevel = 0; SUCCEEDED(hr); uCurrentLevel++)
   {
      hr = pProgressive->SetCurrentLevel(uCurrentLevel);
      if (WINCODEC_ERR_INVALIDPROGRESSIVELEVEL == hr)
      {
         // No more levels
         break;
      }

      if (SUCCEEDED(hr))
      {
         // Output the current level
         hr = pBitmapFrame->CopyPixels(...);
      }                      
   }
}

if (pProgressive)
{
   pProgressive->Release();
}

要件

   
サポートされている最小のクライアント Windows 7、Windows Vista SP2 と Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー wincodec.h
[DLL] Windowscodecs.dll

関連項目

IWICProgressiveLevelControl

プログレッシブ デコードの概要