来自BitmapImage的WritableBitmapImage,没有源Windows Phone 8.1 RT

时间:2015-12-29 17:49:16

标签: c# windows-phone-8.1

我有一个BitmapImage由应用程序本身生成,没有sourceFile或URI。现在,根据this,我必须将此图片转换为WritableBitmapImage才能保存。但是所有方法都需要sourceFile或URI。

1 个答案:

答案 0 :(得分:1)

事后没有好的方法从BitmapImage中提取像素。

如您所知,如果您有源图像,则可以从中创建WriteableBitmap。

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

创建BitmapImage并且原始源不再可用后,您可以获得的最接近的是使用RenderTargetBitmap将显示的Image控件渲染为新的位图,您可以使用{{3}从中提取像素}}

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

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