2013-07-19 105 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

感谢它的工作速度。 –