表格傳輸效果
使用表格傳輸效果,使用從插入您所提供值清單所建立的傳輸函式來對應影像的色彩強度。
這個效果的 CLSID 是CLSID_D2D1TableTransfer。
範例影像
此處的影像顯示數據表傳輸效果的輸入和輸出。
以前 |
---|
在效果之前 ![]() |
後 |
在轉換之後 ![]() |
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();
傳輸函式是以輸入 V=(V0、V1、V2、V3、V? 、VN)清單為基礎,其中 N 是元素數目 - 1。
輸入像素強度會以 C 表示。輸出圖元強度,C 可以使用方程式來計算。
針對值 C,挑選值 k,例如:k/N = C < (k+1)/N
輸出 C 是使用下列方程式計算的:C' = V? + (C - k/N) * N * (V???1?- V?)
這個效果適用於直線和預乘Alpha影像。 效果會輸出預乘Alpha位圖。
如果數據表屬性設定為 [0.0, 0.25, 1.0]
,數據表傳輸函式的圖形看起來會像這樣。
效果屬性
注意
數據表傳輸屬性的所有通道值都是無單位的,且最小值為0.0,且最大值為1.0。
顯示名稱和索引列舉 | 類型和預設值 | 描述 |
---|---|---|
RedTable D2D1_TABLETRANSFER_PROP_RED_TABLE |
FLOAT[] {0.0f, 1.0f} |
用來定義 Red 通道傳輸函式的值清單。 |
RedDisable D2D1_TABLETRANSFER_PROP_RED_DISABLE |
BOOL 假 |
如果您將此設定為 TRUE,效果就不會將傳輸函式套用至 Red 通道。 如果您將此設定為 FALSE,則會將 RedTableTransfer 函式套用至 Red 通道。 |
GreenTable D2D1_TABLETRANSFER_PROP_GREEN_TABLE |
FLOAT[] {0.0f, 1.0f} |
用來定義綠色通道傳輸函式的值清單。 |
GreenDisable D2D1_TABLETRANSFER_PROP_GREEN_DISABLE |
BOOL 假 |
如果您將此設定為 TRUE,效果就不會將傳輸函式套用至綠色通道。 如果您將此設定為 FALSE,則會將 GreenTableTransfer 函式套用至綠色通道。 |
BlueTable D2D1_TABLETRANSFER_PROP_BLUE_TABLE |
FLOAT[] {0.0f, 1.0f} |
用來定義 Blue 通道傳輸函式的值清單。 |
BlueDisable D2D1_TABLETRANSFER_PROP_BLUE_DISABLE |
BOOL 假 |
如果您將此設定為 TRUE,效果就不會將傳輸函式套用至藍色通道。 如果您將此設定為 FALSE,則會將 BlueTableTransfer 函式套用至 Blue 通道。 |
AlphaTable D2D1_TABLE_TRANSFER_PROP_ALPHA_TABLE |
FLOAT[] {0.0f, 1.0f} |
用來定義 Alpha 色板傳輸函式的值清單。 |
AlphaDisable D2D1_TABLETRANSFER_PROP_ALPHA_DISABLE |
BOOL 假 |
如果您將此設定為 TRUE,效果就不會將傳輸函式套用至 Alpha 色板。 如果您將此設定為 FALSE,則會將 AlphaTableTransfer 函式套用至 Alpha 色板。 |
ClampOutput D2D1_TABLETRANSFER_PROP_CLAMP_OUTPUT |
BOOL 假 |
效果是否會將色彩值限制在 0 到 1 之間,然後效果才會將值傳遞至圖形中的下一個效果。 效果會先夾住值,再預乘 Alpha 。 如果您將此值設定為TRUE,效果將會限制值。 如果您將此值設定為 FALSE,效果將不會夾住色彩值,但如果這些值不夠精確,其他效果和輸出表面可能會夾住值。 |
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 的 Windows 8 和平臺更新 [傳統型應用程式 |Windows 市集應用程式] |
最低支援的伺服器 | 適用於 Windows 7 的 Windows 8 和平臺更新 [傳統型應用程式 |Windows 市集應用程式] |
頁眉 | d2d1effects.h |
圖書館 | d2d1.lib、dxguid.lib |