I am new to Windows app development. I want to resize the actual image to specific height and width. I have started using the following code but the resulting image is pixelated.
Please suggest for me better approach to resize image.
This is my code:
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();
}
}