Back to Skiasharp

2.80.0

documentation/docfx/releases/2.80.0.md

4.150.010.3 KB
Original Source
<!-- RAW PR DATA — Do not remove this comment block. AI uses this data to generate the polished release notes below. Re-run the script to refresh this data from git history. Generated: 2026-06-17T23:55:42Z by generate-release-notes.py version: 2.80.0 status: stable branch: release/2.80.0 diff: release/1.68.3..release/2.80.0 prs: 37 api: self=2.80.0/index.md;hb=2.6.1.5 PRs grouped by the preview they first shipped in (newest first). Render each milestone as a trailing "## <label> (<date>)" section per TEMPLATE.md, and merge them all for the top-level Highlights: ## Unreleased — not yet in a tagged preview (5 PRs) - Create a WASM package by @mattleibow in https://github.com/mono/SkiaSharp/pull/1389 - Explicitly request GL ES 3.x in case we have it by @mattleibow in https://github.com/mono/SkiaSharp/pull/1388 - Update the version of Clang used to build for Tizen by @mattleibow in https://github.com/mono/SkiaSharp/pull/1386 - Clone a specific branch of WASM by @mattleibow in https://github.com/mono/SkiaSharp/pull/1387 - Build for Linux ARM32 (armhf) and ARM64 (aarch64) by @mattleibow in https://github.com/mono/SkiaSharp/pull/1382 ## Preview 33 · 2.80.0 · 2020-06-30 · https://github.com/mono/SkiaSharp/compare/v2.80.0-preview.24...v2.80.0-preview.33 (8 PRs) - Fix Packaging by @mattleibow in https://github.com/mono/SkiaSharp/pull/1366 (skia: mono/skia#81) - SkiaSharpSample project now default startup project in the WPF SkiaSharpSample solution by @bender2k14 in https://github.com/mono/SkiaSharp/pull/1369 [community ✨] - Fix #1353 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1368 - Add & Run WASM Unit Tests by @mattleibow in https://github.com/mono/SkiaSharp/pull/1361 - Keep the text blob builder alive by @mattleibow in https://github.com/mono/SkiaSharp/pull/1365 - Keep the font set alive by @mattleibow in https://github.com/mono/SkiaSharp/pull/1362 - Build libSkiaSharp for WASM (only) by @mattleibow in https://github.com/mono/SkiaSharp/pull/1359 - Retry a couple of times by @mattleibow in https://github.com/mono/SkiaSharp/pull/1360 ## Preview 24 · 2.80.0 · 2020-06-27 · https://github.com/mono/SkiaSharp/compare/v2.80.0-preview.14...v2.80.0-preview.24 (5 PRs) - Build SkiaSharp for Win32 ARM64 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1358 - Add snapshots with bounds by @mattleibow in https://github.com/mono/SkiaSharp/pull/1357 - Reduce the usage of deprecated native functions by @mattleibow in https://github.com/mono/SkiaSharp/pull/1356 - Load specific native libraries on desktop/netfx by @mattleibow in https://github.com/mono/SkiaSharp/pull/1342 - Correctly dispose (again) the managed/native object relationship by @mattleibow in https://github.com/mono/SkiaSharp/pull/1344 ## Preview 14 · 2.80.0 · 2020-06-17 · https://github.com/mono/SkiaSharp/compare/v2.80.0-preview.12...v2.80.0-preview.14 (1 PRs) - Add Alpine Native Libraries by @mattleibow in https://github.com/mono/SkiaSharp/pull/1339 ## Preview 12 · 2.80.0 · 2020-06-11 · https://github.com/mono/SkiaSharp/compare/v2.80.0-preview.3...v2.80.0-preview.12 (5 PRs) - Do not add the SkiaSharp prefix to dependencies by @mattleibow in https://github.com/mono/SkiaSharp/pull/1331 - Fix a crash when there is no GL context by @mattleibow in https://github.com/mono/SkiaSharp/pull/1328 - Don't embed libSkiaSharp in the assemblies by @mattleibow in https://github.com/mono/SkiaSharp/pull/1296 - Expose SKPath.ToWinding by @mattleibow in https://github.com/mono/SkiaSharp/pull/1326 - Expose SKPaint.ColorF by @mattleibow in https://github.com/mono/SkiaSharp/pull/1325 ## Preview 3 · 2.80.0 · 2020-06-07 · https://github.com/mono/SkiaSharp/compare/v1.68.3...v2.80.0-preview.3 (13 PRs) - Use the correct shaders by @mattleibow in https://github.com/mono/SkiaSharp/pull/1323 - Improve the CI build label by @mattleibow in https://github.com/mono/SkiaSharp/pull/1322 - Update Samples by @mattleibow in https://github.com/mono/SkiaSharp/pull/1313 - Allow the path to gn and ninja to be specified by @mattleibow in https://github.com/mono/SkiaSharp/pull/1300 - Make the SKFont's public API glyph-only and the others types use it under the hood by @mattleibow in https://github.com/mono/SkiaSharp/pull/1299 - Improve the GPU APIs by @mattleibow in https://github.com/mono/SkiaSharp/pull/1294 - Build for Vulkan on all supported platforms by @mattleibow in https://github.com/mono/SkiaSharp/pull/1287 - Use Clang 10 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1286 - Implemented SKCanvas.DrawTextOnPath by @ziriax in https://github.com/mono/SkiaSharp/pull/1198 [community ✨] - New Images / Icons by @mattleibow in https://github.com/mono/SkiaSharp/pull/1281 - Vulkan Support for Win32 (and APIs for everyone as well) by @mattleibow in https://github.com/mono/SkiaSharp/pull/1010 - Adding back the removed enum members by @mattleibow in https://github.com/mono/SkiaSharp/pull/1285 - Update to a much later version of skia (m80) by @mattleibow in https://github.com/mono/SkiaSharp/pull/986 (skia: mono/skia#64) --> <!-- Generated: 2026-06-18T00:00:00Z by claude-sonnet-4.5 -->

Version 2.80.0

Skia m80, Vulkan, and WebAssembly · Released July 9, 2020 · NuGet · GitHub Release

API changes · SkiaSharp API diff · HarfBuzzSharp 2.6.1.5

Highlights

Version 2.80.0 is a major platform release built on Skia milestone 80, with broad GPU work, first-class Vulkan support, and the first official WebAssembly and new ARM native packages in this line. It also expands the managed API surface with new text, color, path, and snapshot APIs, while shipping with HarfBuzzSharp 2.6.1.5 for the aligned shaping bindings.

Breaking Changes

None called out for this release.

New Features

Engine

  • Skia milestone 80 — Updates the underlying engine to a much newer Skia milestone and carries that work through the 2.80 release family. (#986)

GPU & Rendering

  • Vulkan support across supported platforms — Brings Vulkan support to Win32 and broadens the GPU stack across the supported native targets. (#1010, #1287)
  • Expanded GPU APIs — Improves the GPU-facing managed APIs and adds snapshot support with bounds for easier diagnostics and capture. (#1294, #1357)

Platform

  • WebAssembly support — Adds libSkiaSharp for WebAssembly, the corresponding package work, and initial WASM unit-test coverage. (#1359, #1361, #1387, #1389)
  • Broader native package coverage — Adds Linux ARM32/ARM64, Win32 ARM64, and Alpine native libraries while improving desktop native library loading. (#1382, #1358, #1339, #1342)

API Surface

  • New drawing and color APIs — Adds SKCanvas.DrawTextOnPath, SKPaint.ColorF, and SKPath.ToWinding, plus text API work that aligns SKFont more closely with glyph-based operations. ❤️ @ziriax (#1198, #1325, #1326, #1299)

Bug Fixes

  • Lifetime and disposal fixes — Keeps text blob builders and font sets alive when required and revisits managed/native ownership to prevent premature disposal. (#1365, #1362, #1344)
  • Startup and packaging correctness — Fixes package composition, avoids embedding libSkiaSharp into assemblies, and fixes startup failures when no GL context is available. (#1366, #1296, #1328)

Community Contributors ❤️

ContributorWhat They Did
@ziriaxImplemented SKCanvas.DrawTextOnPath

Unreleased

Final release prep added packaged WASM support, Linux ARM builds, and a refreshed Tizen toolchain before the 2.80.0 tag.

Full Changelog


Preview 33 (June 30, 2020)

This preview hardened WASM and native packaging, added WASM unit tests, and fixed object lifetime issues around text blobs and font sets.

Full Changelog


Preview 24 (June 27, 2020)

This preview added Win32 ARM64 support, snapshot bounds APIs, and improved desktop native loading and disposal behavior.

Full Changelog


Preview 14 (June 17, 2020)

This preview introduced Alpine native libraries.

Full Changelog


Preview 12 (June 11, 2020)

This preview exposed SKPath.ToWinding and SKPaint.ColorF, adjusted packaging, and fixed GL-context startup crashes.

Full Changelog


Preview 3 (June 7, 2020)

This first preview delivered the Skia m80 upgrade, Vulkan support, DrawTextOnPath, and the first wave of GPU API improvements.

Full Changelog