gpt4 book ai didi

c# - 使用 FileSavePicker 在 Windows Phone 8.1 中保存图像

转载 作者:行者123 更新时间:2023-11-30 22:04:52 28 4
gpt4 key购买 nike

我想使用文件保存选择器保存图像。我正在使用 this链接保存,但它仅用于文本,我如何修改它以保存图像?

最佳答案

正如您所提供的 the link那么我假设您在 Continuation 之后设法获得了 StorageFile (这就是它在 WP8.1 运行时的工作方式)。

我还假设您有一个包含图像的,或者您知道如何获得这样的一个。基于这两个,您可以将图像以 png 格式保存到由选择器选择的文件中,例如:

public async Task SaveStreamAsync(IRandomAccessStream streamToSave, StorageFile destination)
{
BitmapDecoder bmpDecoder = await BitmapDecoder.CreateAsync(streamToSave);
PixelDataProvider pixelData = await bmpDecoder.GetPixelDataAsync(BitmapPixelFormat.Rgba8, BitmapAlphaMode.Straight, null, ExifOrientationMode.RespectExifOrientation, ColorManagementMode.DoNotColorManage);
using (var destFileStream = await destination.OpenAsync(FileAccessMode.ReadWrite))
{
BitmapEncoder bmpEncoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, destFileStream);
uint yourWidthAndOrHeight = 1024;
bmpEncoder.SetPixelData(BitmapPixelFormat.Rgba8, BitmapAlphaMode.Straight, yourWidthAndOrHeight, yourWidthAndOrHeight, 300, 300, pixelData.DetachPixelData());
await bmpEncoder.FlushAsync();
}
}

另外,请记住在完成对它们的处理后Dispose您的streamToSave(和其他资源)。

如果你看一下BitmapEncoderBitmapDecoder类,然后您将看到更多选项,包括转换和各种属性。

(我没有粗略地测试过上面的代码,但希望它能正常工作)

关于c# - 使用 FileSavePicker 在 Windows Phone 8.1 中保存图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24805757/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com