AvaloniaUI/Avalonia

SkiaSharp 3.0 support

maxkatz6 opened this issue · 1 comments

Is your feature request related to a problem? Please describe.

Tracking issue on SkiaSharp 3.0 support status.

11.x Timeline

12.0 Target

  • Drop support for 2.88.x, only target 3.0
  • Adjust code base to efficiently use SkiaSharp 3.0 features. Avoid double conversion with SKMatrix44.
  • Use stable APIs for Metal rendering instead of reflection (only available in SkiaSharp 3.0)

Known issues with SkiaSharp 3.0 on Avalonia:

  • Bitmap drawing ignores interpolation mode, as we need to use new API with SKSamplingOptions to support that. paint.FilterQuality is a no-op.
  • Developers, who want to try SkiaSharp 3.0, need to manually include NativeAssets packages for their target platforms. It will be automatically solved once we remove 2.88 support. For example, for Linux it would be:
<PackageReference Include="SkiaSharp.NativeAssets.Linux" Version="3.0.0-preview.3.1" />

I can have a look at mapping filter quality to sampling options like I do with the draw methods