Table of Contents

Version 2.80.3

Platform expansion release · Released July 12, 2021 · NuGet · GitHub Release

API changes · SkiaSharp API diff · HarfBuzzSharp 2.6.1.8

Highlights

SkiaSharp 2.80.3 broadened platform support across Apple, Windows, WebAssembly, and Uno while also adding notable new rendering APIs. This release brought Metal support to Apple platforms, introduced SKRuntimeEffect, expanded GPU configuration hooks, and rounded things out with a solid set of stability fixes from community contributors.

Breaking Changes

None in this release.

New Features

GPU & Rendering

  • Metal APIs for Apple platforms — Adds Metal support for macOS and iOS bindings, opening the door to newer Apple GPU backends. (#1394)
  • Runtime shader support — Introduces the SKRuntimeEffect API so applications can compile and run custom SkSL effects. (#1604)
  • More GPU control points — Exposes GRContextOptions and IsAbandoned so apps can better inspect and configure GPU resources. (#1529, #1659)

Platform

  • WinUI and Uno expansion — Adds support for WinUI Desktop and the Uno Platform SKXamlCanvas backend. (#1696, #1704)
  • Interactive and WebAssembly scenarios — Adds .NET Interactive support, broadens WebAssembly packaging, and introduces an ARM64 build target. (#1710, #1590, #1627)

Images & Documents

  • More metadata and serialization APIs — Adds Exif SubIFD reading plus bindings for serializing SKPicture content. (#1518, #1514)

Bug Fixes

  • Safer OpenGL surface setup — Avoids failures when creating GL surfaces in more edge cases. ❤️ @gmurray81 (#1642)
  • More reliable image and matrix operations — Fixes image pixel reads and prevents crashes when checking SKMatrix.IsInvertible. (#1636, #1527)
  • Better Linux compatibility — Improves musl-based distro detection for native loading. (#1657)

Platform Support

Platform What's New
🍎 Apple Metal APIs, iOS font-loading improvements
🪟 Windows WinUI Desktop support, broader legacy toolchain compatibility
🌐 WebAssembly More packaged variants and .NET Interactive support
🎨 Core API SKRuntimeEffect, GRContextOptions, IsAbandoned, SKPicture serialization

Community Contributors ❤️

Contributor What They Did
@gmurray81 Improved resilience when creating GL surfaces
@HarlanHugh Prevented SKElement.OnRender from running when no presentation source exists
@Mikolaytis Added ANGLE GRGlInterface creation support

Unreleased

Final stabilization updated the bundled WinUI dependency ahead of the stable tag.


Preview 93 (June 11, 2021)

Added Uno Platform backend support for SKXamlCanvas.

Full Changelog


Preview 90 (May 30, 2021)

Added .NET Interactive support, WinUI Desktop integration, SKRuntimeEffect, and a broad round of platform fixes.

Full Changelog


Preview 40 (February 5, 2021)

Brought in Metal APIs for Apple platforms and exposed new GPU configuration hooks.

Full Changelog


Preview 24 (January 27, 2021)

Expanded WebAssembly packaging and refreshed signing and Tizen tooling.

Full Changelog


Preview 18 (October 28, 2020)

Added Exif SubIFD support, SKPicture serialization bindings, and several Apple and ANGLE fixes.

Full Changelog