Skip to content

Version 1.57.1

Compare
Choose a tag to compare
@mattleibow mattleibow released this 05 May 15:38

SkiaSharp

A cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library. It provides a comprehensive 2D API that can be used across mobile, server and desktop models to render images.

  • Fixed issue with non-antialiased text on a scaled canvas on Windows
  • SKTypeface now has support for opening a stream to the underlying font data
  • Fixed an issue with publishing a .NET Core app to Windows 10
  • Installing the NuGet now requires NuGet v3.5+ for UWP apps
  • Improvements for Xamarin Workbooks
  • Improvements for macOS packaging

NuGet: https://www.nuget.org/packages/SkiaSharp/1.57.1
Code Diff: v1.57.0...v1.57.1

SkiaSharp.Views

A set of pre-prepared UI views, panels and surfaces for drawing. One of these views can be added to the view hierarchy, and then be used for drawing without the need for complex setup. There is also a set of extension methods for converting to/from SkiaSharp and native types.

  • Improved the designer detection support when native assets aren't available

NuGet: https://www.nuget.org/packages/SkiaSharp.Views/1.57.1

SkiaSharp.Views.Forms

A set of pre-prepared views for Xamarin.Forms, for fully cross-platform drawing code. There are views for both CPU and GPU backends, along with extension methods for converting to/from SkiaSharp and Xamarin.Forms types. Currently available for iOS, Android, UWP and macOS (preview).

  • Initial support for Xamarin.Mac (preview)
  • Reworked the renderers making extension and customization far easier and simpler
  • The Xamarin.Forms Previewer no longer crashes when adding SkiaSharp views
  • Fixed an issue with the renderers adding multiple native views when in a list view item

NuGet: https://www.nuget.org/packages/SkiaSharp.Views.Forms/1.57.1

SkiaSharp.Svg (preview)

Support for SVG has been a hot topic, but Google has stated that this is not going to be a feature coming too soon. However, we do want to support SVG. To this end, we are trying out a lightweight SVG parser.

This goes in part with SKSvgCanvas, which is used to create SVG files. Although both are still "preview" areas because not all the features of SVG have been implemented yet, they are both still very usable for most cases.

NuGet: https://www.nuget.org/packages/SkiaSharp.Svg/1.57.1

SkiaSharp.Extended (preview)

During the process of development and support, we have collected some cool functions that may be useful to some apps. We decided to release these an a package so that everyone can find use for them. This is a very small collection right now, but we hope to extend this with many more features.

We hope you will give them a go and suggest any additional features or utilities that may come in handy.

NuGet: https://www.nuget.org/packages/SkiaSharp.Extended/1.57.1-beta

HarfBuzzSharp (preview)

HarfBuzz is a text shaping engine, and HarfBuzzSharp exposes some of the functionality to managed .NET applications.

  • Initial bindings for Blob, Buffer, Face and Font

NuGet: https://www.nuget.org/packages/HarfBuzzSharp/1.4.5

SkiaSharp.HarfBuzz (preview)

Support for text shaping using the HarfBuzz text shaping library. This package adds the SKShaper type that can shape a string, returning the codepoints and their positions.

This package also adds some extension methods to SKCanvas to make drawing shaped text easier. These methods include DrawShapedText and it's overloads.

  • Added a SKShaper type for shaping text
  • Added a DrawShapedText extension method to SKCanvas
  • Added a ToHarfBuzzBlob extension method to SKStreamAsset (seekable streams)

NuGet: https://www.nuget.org/packages/SkiaSharp.HarfBuzz/1.57.1-beta

Samples

A few new samples were added to demonstrate some new features.

All the samples that have been built and tested for this version of SkiaSharp can be downloaded in the "Downloads" links below.