将BitmapImage加载到WriteableBitmap但不存在任何方法

时间:2014-04-25 07:54:32

标签: c# bitmap windows-8.1 blur writeablebitmap

使用Windows 8的WriteableBitmap类的构造函数只接受两个参数:此对象的高度和宽度。与Silverlight同时,它接受一个BitmapImage对象作为参数。 (在MSDN上验证:WriteableBitmap.WriteableBitmap constructor

我想加载此BitmapImage,因为我试图模糊已存在于我的Assets文件夹中的图像。

2 个答案:

答案 0 :(得分:1)

感谢您的帮助,我成功地模糊了我的形象。下面是将BitmapImage链接到WriteableBitmap对象的示例:

BitmapImage bi = new BitmapImage(new Uri(filename, UriKind.RelativeOrAbsolute));
WriteableBitmap wb = new WriteableBitmap(bi.PixelWidth, bi.PixelHeight);

var streamFile = await GetFileStream(myFile);
await wb.SetSourceAsync(streamFile);
wb = wb.Convolute(WriteableBitmapExtensions.KernelGaussianBlur5x5);

然后将WriteableBitmap写入LocalStorage!

答案 1 :(得分:0)

您应该可以将Bitmap Image加载到WriteableBitmap中,如下所示:

WriteableBitmap writableBitmap = new WriteableBitmap(bitmapImage);

请参阅此处WriteableBitmap Constructor (BitmapSource)