Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.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# 来自BitmapImage的可写BitmapImage,无源Windows Phone 8.1 RT_C#_Windows Phone 8.1 - Fatal编程技术网

C# 来自BitmapImage的可写BitmapImage,无源Windows Phone 8.1 RT

C# 来自BitmapImage的可写BitmapImage,无源Windows Phone 8.1 RT,c#,windows-phone-8.1,C#,Windows Phone 8.1,我有一个由应用程序本身生成的BitmapImage,它没有源文件或URI。现在我必须将此图像转换为WritableBitmapImage,以便保存它,根据。但是所有的方法都需要sourceFile或URI 事后从位图图像中提取像素没有好方法 正如您所注意到的,如果您有源图像,那么您可以从该图像创建一个可写的位图 由于WritableBitmap和BitmapImage都是图像源,因此在大多数情况下它们的使用方式相同,因此,如果您知道在创建BitmapImage时需要访问像素,则通常可以创建Wri

我有一个由应用程序本身生成的
BitmapImage
,它没有源文件或
URI
。现在我必须将此图像转换为
WritableBitmapImage
,以便保存它,根据。但是所有的方法都需要sourceFile或URI

事后从位图图像中提取像素没有好方法

正如您所注意到的,如果您有源图像,那么您可以从该图像创建一个可写的位图

由于WritableBitmap和BitmapImage都是图像源,因此在大多数情况下它们的使用方式相同,因此,如果您知道在创建BitmapImage时需要访问像素,则通常可以创建WritableBitmap

创建BitmapImage且原始源不再可用后,可以使用的最接近的方法是将显示的图像控件渲染为新位图,从中可以提取像素

这将是第二代图像,但对于大型图像,原始图像和渲染之间的调整插值可能会丢失数据

我建议在生成原始图像时首先使用WriteableBitmap,而不是BitmapImage