
Google
首先,Avalonia 使用的是经过深度定制的 SkiaSharp。这引发了对 SkiaSharp 的讨论,它是
Google 开源图形库 Skia 的 .Net 实现版本。SkiaSharp 最初由 Mono
公司开发,而
微软早已收购了 Mono,因此可以认为这是
微软主导的一个项目。很多人可能误以为 Skia 和 SkiaSharp 是完全等同的,但实际上并非如此。Mono 团队对 Skia 进行了大量修改和优化,包括利用 .Net 的底层特性提升性能等。换句话说,Avalonia 所依赖的 Skia 并非原生的 Skia,而是经过两次深度定制后的版本。除了 Avalonia,还有另一个基于 .Net 的跨平台框架——Uno Platform,它同样能够在
linux 上运行,并且在
linux 环境中也依赖于 SkiaSharp。然而,令人费解的是,在相关讨论中居然没有人提到 SkiaSharp 的存在。当然,如果你对 SkiaSharp 不感兴趣,还有其他选择,比如 Webview2、GTKSharp,甚至还有一些基于 QT 的实现(虽然我一时想不起具体名字)。不过,无论使用哪种技术,都不能否定 Avalonia、Uno 或 Mono 的专业性。如果有人说这些项目不是由正规
公司开发的,那只能说明他们对事实缺乏了解,这样的言论实在是贻笑大方。毕竟,无论是 Avalonia、Uno 还是 Mono,背后都有强大的技术支持和社区贡献,它们都是现代跨平台开发的重要组成部分。