编辑:
他们在最后一次构建中删除了 CompositionImage ...
我想知道 Win2DCanvasBitmap
和 Microsoft.UI.Composition之间的区别CompositionImage
。
在这两种情况下,我都能够显示图像,但我真的不知道/理解这两种方法之间的区别。
CanvasBitmap
方法:
XAML:
<xaml:CanvasControl Draw="OnDraw" />
代码:
private void Onraw(CanvasControl sender, CanvasAnimatedDrawEventArgs e)
{
var image = await CanvasBitmap.LoadAsync(...);
e.DrawingSession.DrawImage(...);
}
CompositionImage
方法:
XAML:
<Grid x:Name="Host" />
代码:
ContainerVisual rootVisual =
(ContainerVisual)ElementCompositionPreview.GetContainerVisual(this.Host);
Compositor compositor = rootVisual.Compositor;
CompositionGraphicsDevice device = compositor.DefaultGraphicsDevice,
CompositionImage image = device.CreateImageFromUri(...);
ImageVisual content = Compositor.CreateImageVisual();
content.Image = image;
rootVisual.Children.InsertAtTop(content);
有什么不同?最好的方法是什么?
为了把事情放在上下文中,我有一个显示很多小图像的应用程序。我需要应用程序内存不足并快速绘制图像。
谢谢,阿德里安。