public static async Task <byte[]> AsPngBytesAsync(this WriteableBitmap bitmap) { MemoryStream stream = await bitmap.AsPngStreamAsync(); try { return(await Task.Run(() => stream.ToArray())); } finally { if (stream != null) { ((IDisposable)stream).Dispose(); } } }