有没有办法在Xaml Image控件上显示SoftwareBitmap而不将SoftwareBitmap保存到文件?我想在编辑后快速显示SoftwareBitmap。
答案 0 :(得分:3)
我想在编辑后快速显示SoftwareBitmap。
目前,Image控件仅支持使用BGRA8编码和预乘或不使用alpha通道的图像。在尝试显示图像之前,请进行测试以确保其格式正确,如果没有,请使用SoftwareBitmap静态Convert方法将图像转换为支持的格式。
if (softwareBitmap.BitmapPixelFormat != BitmapPixelFormat.Bgra8 ||
softwareBitmap.BitmapAlphaMode == BitmapAlphaMode.Straight)
{
softwareBitmap = SoftwareBitmap.Convert(softwareBitmap, BitmapPixelFormat.Bgra8, BitmapAlphaMode.Premultiplied);
}
var source = new SoftwareBitmapSource();
await source.SetBitmapAsync(softwareBitmap);
// Set the source of the Image control
imageControl.Source = source;
您可以使用SoftwareBitmapSource
将SoftwareBitmap设置为ImageBrush的ImageSource。有关更多信息,请参阅Create, edit, and save bitmap images。