Table of Contents

Version 1.54.1

SkiaSharp.Views launch and native binary size reduction · Released October 12, 2016 · NuGet · GitHub Release

Highlights

This release introduces the new SkiaSharp.Views and SkiaSharp.Views.Forms packages (preview), providing pre-built UI views for every supported platform with both CPU and GPU backends. Native binary sizes on Windows/UWP were reduced from over 15 MB to under 5 MB per architecture. SKMatrix moves to a property-based API and GRGlInterface gains ANGLE support.

Breaking Changes

SKMatrix

  • SKMatrix is now property-basedSKMatrix fields have been replaced with get/set properties for consistency with other struct types.

New Features

API Surface

  • SKMatrix flat array supportSKMatrix can now be read from and written to as a flat array.
  • GRGlInterface ANGLE support — Added support for creating an ANGLE interface and improved GL interface assembly.

Platform

  • SkiaSharp.Views (preview) — A new package of pre-built UI views, panels, and surfaces for drawing on every supported platform (iOS, tvOS, Android, macOS, WPF, Classic Desktop, UWP) with both CPU and GPU (OpenGL/ANGLE) backends.
  • SkiaSharp.Views.Forms (preview) — Xamarin.Forms views for fully cross-platform drawing code with CPU and GPU backends, currently available for iOS, Android, and UWP.
  • Class library native file handling — Class library projects that depend on SkiaSharp no longer copy native files, allowing Any CPU builds. Apps still get the native files automatically. Use <ShouldIncludeNativeSkiaSharp>True</ShouldIncludeNativeSkiaSharp> to opt back in.

Build & Size

  • Massive Windows/UWP native binary size reduction — Reduced from >15 MB to <5 MB per platform architecture. ❤️ @xoofx

Community Contributors ❤️

Contributor What They Did
@xoofx Identified the native binary size issue on Windows/UWP