如何在Windows.Forms应用程序中呈现SKBitmap?

时间:2017-10-17 18:13:02

标签: winforms skia skiasharp

您好我开始了一个新项目,WinForms对我来说是新的。我有一个SKBitmap对象,我不知道如何渲染它。

1 个答案:

答案 0 :(得分:3)

有几种方法。首先要做的是安装SkiaSharp.Views包 - 一个包含平台特定视图的小包,用于将SkiaSharp类型转换为当前平台类型:

https://www.nuget.org/packages/SkiaSharp.Views/

安装后你应该得到这些类型:

https://developer.xamarin.com/api/namespace/SkiaSharp.Views.Desktop/

回到代码,您可以添加SKControl并在paint事件上绘制位图:

control.PaintSurface += (...) => {
    // draw
};

或者,您可以将位图转换为Windows位图:

var sysBitmap = skBitmap.ToBitmap();

然后,您可以将其分配给PictureBox

pictureBox.Image = sysBitmap;