Função CheckBitmapBits (icm.h)
Verifica se os pixels em um bitmap especificado estão dentro da gama de saída de uma transformação especificada.
Sintaxe
BOOL CheckBitmapBits(
HTRANSFORM hColorTransform,
PVOID pSrcBits,
BMFORMAT bmInput,
DWORD dwWidth,
DWORD dwHeight,
DWORD dwStride,
PBYTE paResult,
PBMCALLBACKFN pfnCallback,
LPARAM lpCallbackData
);
Parâmetros
hColorTransform
Manipule para a transformação de cores a ser usada.
pSrcBits
Ponteiro para o bitmap para marcar contra a gama de saída.
bmInput
Especifica o formato do bitmap. Deve ser definido como um dos valores do tipo enumerado BMFORMAT .
dwWidth
Especifica o número de pixels por linha de verificação do bitmap.
dwHeight
Especifica o número de linhas de verificação do bitmap.
dwStride
Especifica o número de bytes desde o início de uma linha de verificação até o início da próxima. Se definido como zero, presume-se que as linhas de verificação de bitmap sejam preenchidas para que sejam alinhadas com DWORD.
paResult
Ponteiro para uma matriz de bytes em que os resultados do teste devem ser colocados. Esse buffer de resultados deve conter pelo menos quantos bytes houver pixels no bitmap.
pfnCallback
Ponteiro para uma função de retorno de chamada chamada chamada periodicamente por CheckBitmapBits para relatar o progresso e permitir que o processo de chamada cancele o teste de bitmap. (Consulte ICMProgressProcCallback).
lpCallbackData
Os dados passados de volta para a função de retorno de chamada, por exemplo, para identificar o teste de bitmap sobre qual progresso está sendo relatado.
Retornar valor
Se essa função for bem-sucedida, o valor retornado será um valor diferente de zero.
Se essa função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Comentários
Se o formato de entrada não for compatível com a transformação de cores, a função CheckBitmapBits falhará.
Essa função coloca os resultados dos testes no buffer apontado por paResult. Cada byte no buffer corresponde a um pixel no bitmap e tem um valor sem sinal entre 0 e 255. O valor 0 indica que a cor está em gama, enquanto um valor diferente de zero indica que ela está fora de gama. Para qualquer número inteiro n de modo que 0 <n< 255, um valor de resultado de n + 1 indica que a cor correspondente está pelo menos tão distante da gama quanto seria indicado por um valor de resultado de n.
Quando um dos BMFORMATs de ponto flutuante, BM_32b_scARGB ou BM_32b_scRGB é usado, os dados de cor que estão sendo verificados não devem conter NaN ou infinito. NaN e infinito não são considerados para representar valores de componente de cor legítimos, e o resultado da verificação de pixels que contêm NaN ou infinito não tem sentido em termos de cor. Valores naN ou infinitos nos dados de cor que estão sendo processados serão tratados silenciosamente e um erro não será retornado.
As informações fora da gama nas marcas de gama criadas no WCS usam a distância de cor perceptiva em CIECAM02, que é a raiz quadrada média em CIECAM02 espaço Jab. A distância nas marcas de gama de perfil ICC herdadas é a raiz quadrada média no espaço CIELAB. Recomendamos que você use o espaço CIECAM02 quando ele estiver disponível, pois ele fornece métricas de distância mais percepticamente precisas.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | icm.h |
Biblioteca | Mscms.lib |
DLL | Mscms.dll |