Condividi tramite


Effetto Chroma-key

Converte un determinato colore più o meno una tolleranza in alfa. Ad esempio, la chiave cromatica può rimuovere lo sfondo di un'immagine per un effetto di sovrimpressione dello schermo verde.

Il CLSID per questo effetto è CLSID_D2D1ChromaKey.

Immagine di esempio

esempio di output dell'effetto

Nota

In questo esempio, l'output dell'effetto chroma-key è la seconda immagine con lo sfondo trasparente checkerboard. La terza immagine combina questa operazione con un'immagine di sfondo per la sovrimpressione finale dello schermo verde.

Codice di esempio

ComPtr<ID2D1Effect> chromakeyEffect;
m_d2dContext->CreateEffect(CLSID_D2D1ChromaKey, &chromakeyEffect);
 
chromakeyEffect->SetInput(0, bitmap);
chromaKeyEffect->SetValue(D2D1_CHROMAKEY_PROP_COLOR, {0.0f, 1.0f, 0.0f, 0.0f});
chromakeyEffect->SetValue(D2D1_CHROMAKEY_PROP_TOLERANCE, 0.2f);
chromakeyEffect->SetValue(D2D1_CHROMAKEY_PROP_INVERT_ALPHA, false);
chromakeyEffect->SetValue(D2D1_CHROMAKEY_PROP_FEATHER, false);
 
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(chromakeyEffect.Get());
m_d2dContext->EndDraw();

Proprietà dell'effetto

Le proprietà per l'effetto della chiave cromatica sono definite dall'enumerazione D2D1_CHROMAKEY_PROP .

Requisiti

Requisito Valore
Client minimo supportato Windows 10 [app desktop | App di Windows Store]
Server minimo supportato Windows 10 [app desktop | App di Windows Store]
Intestazione d2d1effects_2.h
Libreria d2d1.lib, dxguid.lib