2013-07-19 167 views
0


我有幾個圖像,每個圖像放置在writablebitmap。每個圖像代表一個圖層,每個圖像都包含透明度。我需要將這些圖像合併爲一個,合併算法:顯示第一個圖像(無變化),然後繪製第二個圖像,首先用附加透明度X%,在第三個圖像之後添加透明度Y%等。 對於工作i使用框架4.5,編程語言C#和VS2012。
感謝您的幫助。將幾個圖像合併爲一個

+0

期望的結果是什麼?你想只顯示在屏幕上,還是將它保存到圖像文件?你還嘗試過什麼嗎? – Clemens

+0

結果只需要顯示,我發現只有一個硬核的方式,計算顏色結果從程序,但我認爲wpf可以做得更好,更快 –

+0

難道你只是覆蓋三個圖像控件與適當的'不透明度值? – Clemens

回答

1

您可以在代碼中動態創建Image控件,並將它們添加到網格或其他面板的Children集合中。

或者您可以使用網格作爲一個ItemsControl的ItemsPanel,並且ItemsSource屬性綁定到有ImageOpacity propetrty對象的集合:

<ItemsControl ItemsSource="{Binding ImageItems}"> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <Grid/> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <Image Source="{Binding Image}" Opacity="{Binding Opacity}"/> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 

在這兩種情況下,電網將照顧將所有圖像放在一起。

+0

如果我需要實時合併幾個圖像,這將是正常的問題波形爲720p分辨率的10個圖像? –

+1

試一試... – Clemens

+0

感謝它的工作速度。 –