UWP如何保存网络图片,Image控件到文件?

 时间:2026-02-16 02:31:40

1、第一种方法是RenderTargetBitmap的方式。

由于Image控件的Source属性可以有BitmapImage或者WriteableBitmap,WriteableBitmap便于保存,而BitmapImage无法直接保存。

这种方法就是用于BitmapImage的图像保存的。

首先是创建文件。使用如图代码,获取Bitmap的UriSource.AbsoluteUri,根据Uri生成文件名。

UWP如何保存网络图片,Image控件到文件?

2、然后,创建一个新的RenderTargetBitmap。RenderTargetBitmap实际上是获取的这个控件渲染的结果。调用RenderAsync获取渲染结果。

接着从RenderTargetBitmap得到像素缓存IBuffer,然后就可以使用IRandomAccessStream和BitmapEncoder编码写入文件了。

UWP如何保存网络图片,Image控件到文件?

3、最终效果如图。这样做的问题在于,得到的图片尺寸并非图片真实尺寸,而是控件的渲染尺寸。

UWP如何保存网络图片,Image控件到文件?

1、第二种方法,是使用WriteableBitmap。前面也说过,BitmapImage和WriteableBitmap都可以作为Image的Source。

虽然Image控件设置Source就可以帮我们下载图片,但是保存却不尽人意。

所以,使用WriteableBitmap自己实现图片下载,有更多的控制权。

如下是一个下载图片,得到WriteableBitmap的函数。

UWP如何保存网络图片,Image控件到文件?

2、WriteableBitmap可以作为Image控件的Source,如图代码设置Image控件的Source。

UWP如何保存网络图片,Image控件到文件?

3、使用如图代码保存WriteableBitmap到文件。

WriteableBitmap可以直接获取PixelBuffer属性,使用ToArray()转变为Byte[],然后用BitmapEncoder编码到文件。

UWP如何保存网络图片,Image控件到文件?

4、最终效果如图所示。可以看到保存到文件是图片真实宽度和高度。

UWP如何保存网络图片,Image控件到文件?

  • 什么是长尾关键词
  • 阳光养猪场怎么提现
  • PS实例-浅色系清新背景制作
  • 如何给图片添加浮雕效果
  • 微信公众号图片怎么删除分组
  • 热门搜索
    欢庆五一劳动节手抄报 书香满校园手抄报 法制手抄报的内容 教师节手抄报简单又漂亮 防踩踏手抄报 保护环境手抄报资料 关于弟子规的手抄报 诚信教育手抄报 清明节手抄报内容资料 关于法治的手抄报