0

我即时创建 WriteableBitmaps。这是最有效和最好的方法吗?

var image = new WriteableBitmap(128, 128);
var colorBuffer = Enumerable.Repeat(
    new[] {this.ImageColor.B, this.ImageColor.G, this.ImageColor.R, this.ImageColor.A},
    image.PixelHeight*image.PixelWidth).SelectMany(b => b).ToArray();

using(var stream = image.PixelBuffer.AsStream())                    
    stream.Write(colorBuffer, 0, colorBuffer.Length);

最后,我将图像作为ImageSource对象返回。所以也许还有另一种方法可以创建ImageSource具有统一颜色的颜色。

4

1 回答 1

0

也许是的,WritableBitmap 最强大的方面是允许将 UIElement 渲染到位图的 Render() 方法。这可用于转换图像(缩放等)或渲染叠加层等。使用 WriteableBitmap,您还可以将用户控件或任何自定义控件转换为图像。

于 2012-10-05T16:26:19.843 回答