Table of Contents

Version 1.68.0

Major Skia engine upgrade · Released December 4, 2018 · NuGet · GitHub Release

Highlights

This release upgrades SkiaSharp to Skia milestone 68, bringing a completely rewritten GPU surface creation pipeline, significant text API improvements, and major file I/O performance gains. The GPU backend changes modernize hardware-accelerated rendering across all platforms, while new SKTextBlob support lays the groundwork for advanced text layout. Linux users gain first-class NuGet packaging, and Windows Classic apps no longer require a separate Visual C++ Runtime install.

Breaking Changes

GPU Surface Creation

  • GRBackendRenderTargetDesc deprecated — Replaced by GRBackendRenderTarget. The new type provides a cleaner, more explicit API for describing render targets. See the GPU migration guide for details.
  • GRBackendTextureDesc deprecated — Replaced by GRBackendTexture. Update all GPU texture creation code to use the new type.
  • SKPaintGLSurfaceEventArgs updated — Event args now surface the new GPU types. Existing handlers should migrate to the new properties.

Color & Pixel Formats

  • 8-bit indexed color type (Index8) removed — Skia m68 dropped support for indexed color. Convert indexed images to a full-color type (Rgba8888, Bgra8888, etc.) before use.
  • SKColorTable removed — Color tables are no longer supported. Any code referencing SKColorTable must be updated to use direct pixel formats.

Surface Properties

  • SKSurfaceProps struct superseded — Use the new SKSurfaceProperties class instead. The class provides the same functionality with a richer API.

Views & Event Handling

  • macOS/iOS/tvOS delegates deprecated — Use events or override OnPaintSurface instead.
  • Android renderer usage deprecated — Use events or override OnPaintSurface instead.

New Features

Engine

  • Skia m68 upgrade — Brings all upstream Skia improvements, optimizations, and bug fixes from milestone 68.
  • Major file I/O performance improvements — Decoding, encoding, and processing operations are significantly faster.

GPU & Rendering

  • Rewritten hardware-accelerated surface creation — The entire GPU pipeline has been modernized with GRBackendRenderTarget and GRBackendTexture, providing better device compatibility and clearer semantics. See the GPU migration guide.
  • UWP GPU view rewritten — The hardware-accelerated view now supports more devices and includes multiple bug fixes.
  • Pixel scalingSKPixmap, SKImage, and SKBitmap all support ScalePixels for high-quality image resizing.

Text

  • SKTextBlob and SKTextBlobBuilder — First-class text blob support, enabling efficient batched text rendering and laying the foundation for advanced text layout.
  • Expanded SKPaint text API — New methods: BreakText, GetGlyphs, CountGlyphs, ContainsGlyphs, GetGlyphWidths, GetTextIntercepts, GetPositionedTextIntercepts, GetHorizontalTextIntercepts.
  • Expanded SKTypeface text API — New methods: GetGlyphs, CountGlyphs.

Fonts

  • SKFontManager enhancements — Load entire font family sets via SKFontStyleSet and match characters more precisely.

Images & Documents

  • Easier SKImage creation — New overloads simplify image decoding and creation from various sources.
  • SKDocumentPdfMetadata — New creation options for PDF document metadata (title, author, subject, etc.).

Platform

  • Linux NuGet package — New SkiaSharp.NativeAssets.Linux package ships pre-built Ubuntu 16.04 amd64 binaries, with support for most Debian-based distributions. (#312)
  • Static VC++ Runtime on Windows — The Visual C++ Runtime is now statically linked on Windows Classic, eliminating the need for a separate runtime installer.
  • Android SKGLView transparency — The Xamarin.Forms SKGLView on Android is now a transparent view.

API Surface

  • New method overloads — Additional convenience overloads for surfaces, shaders, and effects across the API.
  • Preferred OnPaintSurface pattern — All views now prefer OnPaintSurface as the primary override point for drawing.

Bug Fixes

  • Multiple bug fixes across the core library and platform views.
  • UWP hardware-accelerated view stability and device compatibility improvements.

Preview 28 (November 14, 2018)

Release candidate build containing all features and fixes that shipped in the stable 1.68.0 release.

Full Changelog