建议调整图像大小并在 winRT 中保存本地文件夹的最佳方法

本文关键字:保存 文件夹 方法 最佳 winRT 图像 调整 | 更新日期: 2024-11-03 20:00:02

我是Windows应用程序开发的新手。我想将实际图像的大小调整为特定的高度和宽度。 我已经开始使用以下代码,但生成的图像是像素化的。

请为我建议更好的方法来调整图像大小。

这是我的代码:

using (var sourceStream = await file.OpenAsync(FileAccessMode.Read)){
       BitmapDecoder decoder = await BitmapDecoder.CreateAsync(sourceStream);
       BitmapTransform transform = new BitmapTransform() { ScaledHeight = 560, ScaledWidth = 580 };
       PixelDataProvider pixelData = await decoder.GetPixelDataAsync(
           BitmapPixelFormat.Rgba8,
           BitmapAlphaMode.Straight,
           transform,
           ExifOrientationMode.RespectExifOrientation,
           ColorManagementMode.DoNotColorManage);
       using (var destinationStream = await destinationfile.OpenAsync(FileAccessMode.ReadWrite))
       {
           BitmapEncoder encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, destinationStream);
           encoder.SetPixelData(BitmapPixelFormat.Rgba8, BitmapAlphaMode.Straight, 580, 560, 96, 96, pixelData.DetachPixelData());
           await encoder.FlushAsync();
       }
   }

建议调整图像大小并在 winRT 中保存本地文件夹的最佳方法

这是

不使用WritableBitmapEx的解决方案

如何在 C# WinRT/winmd 中调整图像大小?