Compartilhar via


Função AlphaBlend (wingdi.h)

A função AlphaBlend exibe bitmaps que têm pixels transparentes ou semitransparentes.

Sintaxe

BOOL AlphaBlend(
  [in] HDC           hdcDest,
  [in] int           xoriginDest,
  [in] int           yoriginDest,
  [in] int           wDest,
  [in] int           hDest,
  [in] HDC           hdcSrc,
  [in] int           xoriginSrc,
  [in] int           yoriginSrc,
  [in] int           wSrc,
  [in] int           hSrc,
  [in] BLENDFUNCTION ftn
);

Parâmetros

[in] hdcDest

Um identificador para o contexto do dispositivo de destino.

[in] xoriginDest

A coordenada x, em unidades lógicas, do canto superior esquerdo do retângulo de destino.

[in] yoriginDest

A coordenada y, em unidades lógicas, do canto superior esquerdo do retângulo de destino.

[in] wDest

A largura, em unidades lógicas, do retângulo de destino.

[in] hDest

A altura, em unidades lógicas, do retângulo de destino.

[in] hdcSrc

Um identificador para o contexto do dispositivo de origem.

[in] xoriginSrc

A coordenada x, em unidades lógicas, do canto superior esquerdo do retângulo de origem.

[in] yoriginSrc

A coordenada y, em unidades lógicas, do canto superior esquerdo do retângulo de origem.

[in] wSrc

A largura, em unidades lógicas, do retângulo de origem.

[in] hSrc

A altura, em unidades lógicas, do retângulo de origem.

[in] ftn

A função de combinação alfa para bitmaps de origem e destino, um valor alfa global a ser aplicado a todo o bitmap de origem e as informações de formato para o bitmap de origem. No momento, as funções de combinação de origem e destino estão limitadas a AC_SRC_OVER. Consulte as estruturas BLENDFUNCTION e EMRALPHABLEND .

Valor retornado

Se a função for bem-sucedida, o valor retornado será TRUE.

Se a função falhar, o valor retornado será FALSE.

Comentários

Se o retângulo de origem e o retângulo de destino não tiverem o mesmo tamanho, o bitmap de origem será estendido para corresponder ao retângulo de destino. Se a função SetStretchBltMode for usada, o valor iStretchMode será convertido automaticamente em COLORONCOLOR para essa função (ou seja, BLACKONWHITE, WHITEONBLACK e HALFTONE serão alterados para COLORONCOLOR).

As coordenadas de destino são transformadas usando a transformação especificada atualmente para o contexto do dispositivo de destino. As coordenadas de origem são transformadas usando a transformação especificada atualmente para o contexto do dispositivo de origem.

Ocorrerá um erro (e a função retornará FALSE) se o contexto do dispositivo de origem identificar um contexto de dispositivo de metafile aprimorado.

Se os bitmaps de destino e de origem não tiverem o mesmo formato de cor, AlphaBlend converterá o bitmap de origem para corresponder ao bitmap de destino.

O AlphaBlend não dá suporte ao espelhamento. Se a largura ou altura da origem ou destino for negativa, essa chamada falhará.

Ao renderizar em uma impressora, primeiro chame GetDeviceCaps com SHADEBLENDCAPS para determinar se a impressora dá suporte à mesclagem com AlphaBlend. Observe que, para um DC de exibição, todas as operações de mesclagem têm suporte e esses sinalizadores representam se as operações são aceleradas.

Se a origem e o destino forem a mesma superfície, ou seja, eles são a tela ou o mesmo bitmap de memória e os retângulos de origem e destino se sobrepõem, ocorre um erro e a função retorna FALSE.

O retângulo de origem deve estar completamente dentro da superfície de origem, caso contrário, ocorrerá um erro e a função retornará FALSE.

AlphaBlend falhará se a largura ou altura da origem ou destino for negativa.

O membro SourceConstantAlpha de BLENDFUNCTION especifica um valor de transparência alfa a ser usado em todo o bitmap de origem. O valor SourceConstantAlpha é combinado com qualquer valor alfa por pixel. Se SourceConstantAlpha for 0, supõe-se que a imagem seja transparente. Defina o valor SourceConstantAlpha como 255 (o que indica que a imagem é opaca) quando você só deseja usar valores alfa por pixel.

Requisitos

   
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]
Plataforma de Destino Windows
Cabeçalho wingdi.h (inclua Windows.h)
Biblioteca Msimg32.lib
DLL Msimg32.dll

Confira também

BLENDFUNCTION

Funções bitmap

Visão geral do Bitmaps

EMRALPHABLEND

Getdevicecaps

SetStretchBltMode