SoftwareBitmap 与 BitmapImage 的比较

SoftwareBitmap compared to BitmapImage

所以我正在创建一个包含 InkCanvas 的 UWP 应用程序,因此,我想将内容存储为变量,以便我可以在 canvas 中显示预览菜单。

我的问题是,什么是最好的bitmap,因为似乎有很多选择。

SoftwareBitmap 包含在 Windows.Graphics.Imaging 中,而 BitmapImageWindows.UI.XAML.Media.Imaging 的一部分,两者都在 UWP 应用程序中可用。

用于显示图像的 UWP Image class 可以使用这两种格式吗?

哪个最适合我的情况?

所以做了很多实验,它似乎与 Windows.UI.XAML.ControlsImage 控件一起使用,SoftwareBitmap 效果相当好。

可以将 SoftwareBitmapSource 分配给 Image.Source,前提是 SoftwareBitmap 具有 BitmapPixelFormat.Bgra8BitmapAlphaMode.Premultiplied(或 BitmapAlphaMode.None)。来自 SoftwareBitmapSource 页面的备注部分:

A SoftwareBitmap displayed in a XAML app must be in BGRA pixel format with pre-multiplied alpha values

一切正常,现在开始缩小位图,因为 InkCanvasImage 之间的大小差异使 thumbnail/preview 看起来很差。