public static async Task <byte[]> EncodeToSquareJpegImageAsync(StorageFile inputFile, uint size, double dpi = 72) { var inputStream = await inputFile.OpenReadAsync(); var decoder = await BitmapDecoder.CreateAsync(inputStream); using (var inMemoryRandomAccessStream = new InMemoryRandomAccessStream()) { var encoder = await BitmapEncoder.CreateForTranscodingAsync(inMemoryRandomAccessStream, decoder); encoder.BitmapTransform.ScaledWidth = size; encoder.BitmapTransform.ScaledHeight = size; await encoder.FlushAsync(); await inMemoryRandomAccessStream.FlushAsync(); return(await inMemoryRandomAccessStream.ToByteArrayAsync()); } }