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.
Sağladığınız değerlerin listesini ilişkilendirmeden oluşturulan bir aktarım işlevini kullanarak görüntünün renk yoğunluklarını eşlemek için tablo aktarımı efektini kullanın.
Bu etki için CLSID CLSID_D2D1TableTransfer.
Örnek resim
Buradaki görüntüde tablo aktarım efektinin girişi ve çıkışı gösterilmektedir.
| Önce |
|---|
Efektin önüne görüntüyü ![]() |
| Sonra |
Dönüştürmeden sonra görüntüyü ![]() |
ComPtr<ID2D1Effect> tableTransferEffect;
m_d2dContext->CreateEffect(CLSID_D2D1TableTransfer, &tableTransferEffect);
tableTransferEffect->SetInput(0, bitmap);
float table[2] = {0.75f, 1.0f};
tableTransferEffect->SetValue(D2D1_TABLETRANSFER_PROP_BLUE_TABLE, table);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(tableTransferEffect.Get());
m_d2dContext->EndDraw();
Aktarım işlevi, V=(V0,V1,V2,V3, V? ,VN) girişlerinin listesini temel alır; burada N öğe sayısı - 1'dir.
Giriş piksel yoğunluğu C olarak gösterilir. Çıkış piksel yoğunluğu C denklemi ile hesaplanabilir.
C değeri için, k/N = C < (k+1)/N gibi bir k değeri seçin
C çıkışı şu denklem kullanılarak hesaplanır: C' = V? + (C - k/N) * N * (V??? 1? - V?)
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.
Tablo özelliği [0.0, 0.25, 1.0]olarak ayarlandıysa tablo aktarımı işlevinin grafiği aşağıdaki gibi görünür.
Tablo aktarımı işlevi için piksel yoğunluğu grafiğini 
Efekt özellikleri
Not
Tablo aktarım özelliklerinin tüm kanallarının değerleri birimsizdir ve en az 0,0 ve en fazla 1,0'a sahiptir.
| Görünen ad ve dizin numaralandırması | Tür ve varsayılan değer | Açıklama |
|---|---|---|
| RedTable D2D1_TABLETRANSFER_PROP_RED_TABLE |
FLOAT[] {0,0f, 1,0f} |
Kırmızı kanal için aktarım işlevini tanımlamak için kullanılan değerlerin listesi. |
| RedDisable D2D1_TABLETRANSFER_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 RedTableTransfer işlevi Kırmızı kanala uygulanır. |
| GreenTable D2D1_TABLETRANSFER_PROP_GREEN_TABLE |
FLOAT[] {0,0f, 1,0f} |
Yeşil kanal için aktarım işlevini tanımlamak için kullanılan değerlerin listesi. |
| GreenDisable D2D1_TABLETRANSFER_PROP_GREEN_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Yeşil kanala uygulamaz. Bunu YANLIŞ olarak ayarlarsanız GreenTableTransfer işlevi Yeşil kanala uygulanır. |
| BlueTable D2D1_TABLETRANSFER_PROP_BLUE_TABLE |
FLOAT[] {0,0f, 1,0f} |
Mavi kanalın aktarım işlevini tanımlamak için kullanılan değerlerin listesi. |
| BlueDisable D2D1_TABLETRANSFER_PROP_BLUE_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Mavi kanala uygulamaz. Bunu YANLIŞ olarak ayarlarsanız BlueTableTransfer işlevi Mavi kanala uygulanır. |
| AlphaTable D2D1_TABLE_TRANSFER_PROP_ALPHA_TABLE |
FLOAT[] {0,0f, 1,0f} |
Alfa kanalının aktarım işlevini tanımlamak için kullanılan değerlerin listesi. |
| AlphaDisable D2D1_TABLETRANSFER_PROP_ALPHA_DISABLE |
BOOL YANLIŞ |
Bunu TRUE olarak ayarlarsanız, etki aktarım işlevini Alfa kanalına uygulamaz. Bunu YANLIŞ olarak ayarlarsanız AlphaTableTransfer işlevini Alfa kanalına uygular. |
| ClampOutput D2D1_TABLETRANSFER_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 |

