我需要将两个WriteableBitmap对象的两个颜色值合并并进行计算。因此,我在第一个对象上运行ForEach循环,并将其颜色值和第二个对象的颜色值解析到一个方法中。
writeableBitmap.ForEach((x, y, color) =>
MergePixelColor(color, mergedWriteableBitmap.GetPixel(x, y)));
我直接从委托中获取第一个值,但要访问第二个颜色值,我使用WriteableBitmap扩展的GetPixel方法。实际上应该可以这样工作,但似乎GetPixel方法返回错误数据(颜色有些不正确,偏向于“黄色”或“红色”)。
我查阅了以下文章:http://forums.silverlight.net/t/250392.aspx/1?WriteableBitmap+GetPixel+,其中提到可能存在图像格式问题。我的问题是,我没有直接访问生成图像的地方。我从webservice中提取它们,而且我不知道那部分能否适应(至少我不知道如何适应)。
现在我的问题是,是否有其他方法或解决此问题的变通方法?你有什么想法吗?