Método ID2D1CommandSink1::SetPrimitiveBlend1 (d2d1_2.h)

Define um novo modo de mistura primitiva.

Sintaxe

HRESULT SetPrimitiveBlend1(
  D2D1_PRIMITIVE_BLEND primitiveBlend
);

Parâmetros

primitiveBlend

Tipo: D2D1_PRIMITIVE_BLEND

A mistura primitiva que se aplicará aos primitivos subsequentes.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Se falhar, retornará um código de erro HRESULT .

Comentários

Modos de mesclagem

Para renderização aliased (exceto no modo MIN), o valor de saída O é calculado interpolando linearmente o valor blend(S, D) com o valor de pixel de destino, com base na quantidade que o primitivo cobre o pixel de destino.

A tabela aqui mostra os modos de mistura primitivos para mesclagem alias e suavizada. As equações listadas na tabela usam estes elementos:

  • O = Saída
  • S = Origem
  • SA = Alfa de origem
  • D = Destino
  • DA = Destino Alfa
  • C = Cobertura de pixel
Modo de mistura primitiva Mesclagem de alias Mesclagem suavizada Descrição
D2D1_PRIMITIVE_BLEND_SOURCE_OVER O = (S + (1 – SA) * D) * C + D * (1 – C) O = S * C + D *(1 – SA *C) O modo de combinação de origem sobre destino padrão.
D2D1_PRIMITIVE_BLEND_COPY O = S * C + D * (1 – C) O = S * C + D * (1 – C) A origem é copiada para o destino; os pixels de destino são ignorados.
D2D1_PRIMITIVE_BLEND_MIN O = Min(S + 1-SA, D) O = Min(S * C + 1 – SA *C, D) Os valores de pixel resultantes usam o mínimo dos valores de pixel de origem e de destino. Disponível em Windows 8 e posterior.
D2D1_PRIMITIVE_BLEND_ADD O = (S + D) * C + D * (1 – C) O = S * C + D Os valores de pixel resultantes são a soma dos valores de pixel de origem e de destino. Disponível em Windows 8 e posterior.
  Uma ilustração de Direct2D modos de mistura primitivos com opacidade e planos de fundo variados. Uma ilustração dos modos de mistura primitivos com opacidade e planos de fundo variados.

A mistura primitiva será aplicada a todos os primitivos desenhados no contexto, a menos que isso seja substituído pelo parâmetro compositeMode na API DrawImage .

A mistura primitiva aplica-se ao interior de todos os primitivos desenhados no contexto. No caso de DrawImage, isso será implícito pelo retângulo da imagem, deslocamento e transformação do mundo.

Se a mistura primitiva for diferente de D2D1_PRIMITIVE_BLEND_OVER , a renderização ClearType será desativada. Se o aplicativo forçar explicitamente a renderização ClearType nesses modos, o contexto de desenho será colocado em um estado de erro. D2DERR_WRONG_STATE será retornado de EndDraw ou Flush.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8.1 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho d2d1_2.h

Confira também

ID2D1CommandSink1