Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Her kanal için sağladığınız değerler listesinden oluşturulan doğrusal bir işlevi kullanarak görüntünün renk yoğunluklarını eşlemek için doğrusal aktarım efektini kullanın.
Bu etki için CLSID CLSID_D2D1LinearTransfer.
Örnek resim
| Önce |
|---|
Efektin önüne görüntüyü ![]() |
| Sonra |
Dönüştürmeden sonra görüntüyü ![]() |
ComPtr<ID2D1Effect> linearTransferEffect;
m_d2dContext->CreateEffect(CLSID_D2D1LinearTransfer, &linearTransferEffect);
linearTransferEffect->SetInput(0, bitmap);
linearTransferEffect->SetValue(D2D1_LINEARTRANSFER_PROP_RED_Y_INTERCEPT, -1.0f);
linearTransferEffect->SetValue(D2D1_LINEARTRANSFER_PROP_RED_SLOPE, 2.5f);
linearTransferEffect->SetValue(D2D1_LINEARTRANSFER_PROP_GREEN_Y_INTERCEPT, -1.0f);
linearTransferEffect->SetValue(D2D1_LINEARTRANSFER_PROP_GREEN_SLOPE, 5.0f);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(linearTransferEffect.Get());
m_d2dContext->EndDraw();
Doğrusal aktarım işlevi, belirttiğiniz her kanal için eğim ve y kesme noktası temelinde oluşturulur. C çıkış piksel yoğunluğu şu denklemle hesaplanır: C' = mC + B; burada m doğrusal işlevin eğimi ve B doğrusal işlevin Y kesme noktasıdır.
Bu etki düz ve önceden yüklenmiş alfa görüntülerinde çalışır. Efekt, önceden çoğaltılmış alfa bit eşlemleri oluşturur.
Efekt özellikleri
Not
Doğrusal aktarım özelliklerinin tüm kanalları için:
- Y-kesme noktası sınırlanmaz ve birimsizdir.
- Eğim sınırlanmamıştır ve birimsizdir.
| Görünen ad ve dizin numaralandırması | Tür ve varsayılan değer | Açıklama |
|---|---|---|
| RedYIntercept D2D1_LINEARTRANSFER_PROP_RED_Y_INTERCEPT |
YÜZMEK 0,0f |
Kırmızı kanal için doğrusal işlevin Y kesme noktası. |
| RedSlope D2D1_LINEARTRANSFER_PROP_RED_SLOPE |
YÜZMEK 1,0f |
Kırmızı kanal için doğrusal işlevin eğimi. |
| RedDisable D2D1_LINEARTRANSFER_PROP_RED_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Kırmızı kanala uygulamaz. Bunu YANLIŞ olarak ayarlarsanız, etki RedLinearTransfer işlevini Kırmızı kanala uygular. |
| GreenYIntercept D2D1_LINEARTRANSFER_PROP_GREEN_Y_INTERCEPT |
YÜZMEK 0,0f |
Yeşil kanal için doğrusal işlevin Y kesme noktası. |
| GreenSlope D2D1_LINEARTRANSFER_PROP_GREEN_SLOPE |
YÜZMEK 1,0f |
Yeşil kanal için doğrusal işlevin eğimi. |
| GreenDisable D2D1_LINEARTRANSFER_PROP_GREEN_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Yeşil kanala uygulamaz. Bunu YANLIŞ olarak ayarlarsanız GreenLinearTransfer işlevi Green kanalına uygulanır. |
| BlueYIntercept D2D1_LINEARTRANSFER_PROP_BLUE_Y_INTERCEPT |
YÜZMEK 0,0f |
Mavi kanal için doğrusal işlevin Y kesme noktası. |
| BlueSlope D2D1_LINEARTRANSFER_PROP_BLUE_SLOPE |
YÜZMEK 1,0f |
Mavi kanal için doğrusal işlevin eğimi. |
| BlueDisable D2D1_LINEARTRANSFER_PROP_BLUE_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Mavi kanala uygulamaz. Bunu YANLIŞ olarak ayarlarsanız BlueLinearTransfer işlevi Mavi kanala uygulanır. |
| AlphaYIntercept D2D1_LINEARTRANSFER_PROP_ALPHA_Y_INTERCEPT |
YÜZMEK 0,0f |
Alfa kanalı için doğrusal işlevin Y kesme noktası. |
| AlfaSlope D2D1_LINEARTRANSFER_PROP_ALPHA_SLOPE |
YÜZMEK 0,0f |
Alfa kanalı için doğrusal işlevin eğimi. |
| AlphaDisable D2D1_LINEARTRANSFER_PROP_ALPHA_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Alfa kanalına uygulamaz. Bunu YANLIŞ olarak ayarlarsanız AlphaLinearTransfer işlevini Alfa kanalına uygular. |
| ClampOutput D2D1_LINEARTRANSFER_PROP_CLAMP_OUTPUT |
BOOL YANLIŞ |
Efektin renk değerlerini efektten önce 0 ile 1 arasında bir değere sıkıştırıp bağlamadığı, değerleri grafikteki bir sonraki efekte geçirir. Etkisi, alfayı önceden yüklemeden önce değerleri sıkıştırıyor. Bunu TRUE olarak ayarlarsanız, efekt değerleri sıkıştıracaktır. Bunu YANLIŞ olarak ayarlarsanız, efekt renk değerlerini sıkıştırmaz, ancak diğer efektler ve çıkış yüzeyi yeterince yüksek duyarlıkta değilse değerleri sıkıştırabilir. |
Gereksinim -leri
| Gereksinim | Değer |
|---|---|
| Desteklenen en düşük istemci | Windows 7 için Windows 8 ve Platform Güncelleştirmesi [masaüstü uygulamaları | Windows Mağazası uygulamaları] |
| Desteklenen en düşük sunucu | Windows 7 için Windows 8 ve Platform Güncelleştirmesi [masaüstü uygulamaları | Windows Mağazası uygulamaları] |
| Üstbilgi | d2d1effects.h |
| Kütüphane | d2d1.lib, dxguid.lib |

