Método IWICProgressiveLevelControl::SetCurrentLevel (wincodec.h)
Especifica el nivel que se va a recuperar en la siguiente llamada a CopyPixels.
Sintaxis
HRESULT SetCurrentLevel(
[in] UINT nLevel
);
Parámetros
[in] nLevel
Tipo: UINT
Especifica qué nivel se va a devolver a continuación. Si es mayor que el número total de niveles admitidos, se devolverá un error.
Valor devuelto
Tipo: HRESULT
Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
Una llamada no tiene que solicitar todos los niveles admitidos. Si un llamador solicita el nivel 1, sin haber solicitado previamente el nivel 0, los bits devueltos por la siguiente llamada a CopyPixels incluirán ambos niveles.
Si el nivel solicitado no es válido, el error devuelto se WINCODEC_ERR_INVALIDPROGRESSIVELEVEL.
Ejemplos
Los usuarios deben usar este método para recorrer en iteración los niveles progresivos de una imagen JPEG progresiva en lugar del método GetCurrentLevel . Los niveles progresivos JPEG vienen determinados por la imagen y no tienen un recuento fijo de niveles. El uso del método GetCurrentLevel obligará a la aplicación a esperar a que se descarguen todos los niveles progresivos antes de que pueda devolverse. En su lugar, las aplicaciones deben usar el código siguiente para recorrer en iteración los niveles progresivos de una imagen JPEG progresiva.
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();
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 7, Windows Vista con SP2 y Platform Update para Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 R2, Windows Server 2008 con SP2 y Actualización de plataforma para Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | wincodec.h |
Archivo DLL | Windowscodecs.dll |