Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在windows phone上模糊图像_C#_Windows Phone 8_Windows Phone_Writeablebitmapex - Fatal编程技术网

C# 在windows phone上模糊图像

C# 在windows phone上模糊图像,c#,windows-phone-8,windows-phone,writeablebitmapex,C#,Windows Phone 8,Windows Phone,Writeablebitmapex,我正在使用WriteableBitmapEX库尝试在windows phone 8上模糊位图图像我尝试了以下代码 Uri uri = new Uri(AnyUri, UriKind.RelativeOrAbsolute); BitmapImage img1 = new BitmapImage(); img1.UriSource = uri; img1.CreateOptions = BitmapCreateOptions.None; WriteableBitmap wbm = new Write

我正在使用WriteableBitmapEX库尝试在windows phone 8上模糊位图图像我尝试了以下代码

Uri uri = new Uri(AnyUri, UriKind.RelativeOrAbsolute);
BitmapImage img1 = new BitmapImage();
img1.UriSource = uri;
img1.CreateOptions = BitmapCreateOptions.None;
WriteableBitmap wbm = new WriteableBitmap(img1);
var wbm2 = WriteableBitmapExtensions.Convolute(wbm, WriteableBitmapExtensions.KernelGaussianBlur5x5);
PanoramaBackground.ImageSource = wbm2;
但有一个例外“对象引用未设置为对象的实例” 在行
WriteableBitmap wbm=newwriteablebitmap(img1)

为什么这不起作用???

这应该起作用:

WriteableBitmap bitmap = BitmapFactory.New(0, 0).FromContent("RelativePathHere.png");
var blurredBitmap = WriteableBitmapExtensions.Convolute(bitmap, WriteableBitmapExtensions.KernelGaussianBlur5x5);
ImageControl.Source = blurredBitmap;
编辑

好的,看起来您是从web上获取图像的,您遇到了一个异常,因为图像尚未加载。您需要订阅ImageOpened事件处理程序。代码如下:

Uri uri = new Uri("AbsoluteUriPath.png", UriKind.Absolute);
BitmapImage img1 = new BitmapImage(uri);
img1.CreateOptions = BitmapCreateOptions.None;
img1.ImageOpened += (s, e) =>
{
      WriteableBitmap bitmap = new WriteableBitmap(img1);
      var blurredBitmap = WriteableBitmapExtensions.Convolute(bitmap,
                WriteableBitmapExtensions.KernelGaussianBlur5x5);
            ImageControl.Source = blurredBitmap;
};

您确定这是一个完整的代码示例吗?那个密码看起来不错。是的,我确信!但它不起作用@Danielkelley如果图像不是相对的呢??图像源是来自的绝对链接API@HeshamHaleem我试着使用你的代码,它也可以工作。你能分享你正在测试的绝对链接吗?