用颜色覆盖WriteableBitmap

我试图在Silverlight中使用某种颜色覆盖WriteableBitmap。 我有一个黑色和白色的基本图像,我正在使用它为一个新的合成图像创建较小的WriteableBitmap图像,并且我希望在将其添加到某个颜色之前用某种颜色覆盖源图像的黑色或白色部分复合图像。

我现在在做的是:

var cutOut = new WriteableBitmap(8, 14);
/*
    cut out the image here
*/
cutOut.Render(sourceImage, transform); // sourceImage is the base image
cutOutImage.Source = cutOut; // cutOutImage is an Image element in XAML

compositeImage.Render(cutOutImage, transform2); // compositeImage is the final WriteableBitmap that is shown on screen

我尝试了http://blogs.silverarcade.com/silverlight-games-101/15/silverlight-blitting-and-blending-with-silverlights-writeablebitmap/上的方法,并使用hxxp://writeablebitmapex.codeplex中的扩展方法.com /,但我似乎无法在将其呈现到compositeImage之前在cutOut图像上获得颜色叠加层。

有谁知道一个好的方法来做到这一点?

提前致谢。


只是一个很快的猜测,但是你在WriteableBitmap.Render(...)之后是否尝试过使用WriteableBitmap.Invalidate( )? 除此之外,您可能想尝试将图像渲染为临时的WriteableBitmap,然后使用WriteableBitmap.Pixels将该临时图像复制到新的位图上。 在新的位图上,您应该可以执行图像操作。

干杯,亚历克斯

链接地址: http://www.djcxy.com/p/26869.html

上一篇: Overlay WriteableBitmap with color

下一篇: Difference between CouchDB and Couchbase