Skip to content

Releases: mono/SkiaSharp

Version 2.80.3 (Preview Build 90)

30 May 13:23
11591db
Compare
Choose a tag to compare
Pre-release

What's Changed

New Contributors

Full Changelog: v2.80.3-preview.40...v2.80.3-preview.90

Version 2.80.3 (Preview Build 40)

06 Feb 21:21
Compare
Choose a tag to compare
Pre-release

What's Changed

New Contributors

Full Changelog: v2.80.3-preview.24...v2.80.3-preview.40

Version 2.80.3 (Preview Build 24)

27 Jan 16:14
66ed32a
Compare
Choose a tag to compare
Pre-release

What's Changed

Full Changelog: v2.80.3-preview.18...v2.80.3-preview.24

Version 2.80.3 (Preview Build 18)

10 Nov 11:57
b43c95f
Compare
Choose a tag to compare
Pre-release

What's Changed

New Contributors

Full Changelog: v2.80.2...v2.80.3-preview.18

Version 2.80.2

12 Sep 00:08
2019706
Compare
Choose a tag to compare

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.

Changes

  • Added several memory debugging members to GRContext and the new SKGraphics and SKTraceMemoryDump
  • Fixed origin parameter is ignored in SKSurface.Create [Ziriax]
  • Fixed the exception when creating SKData from a non-seekable stream
  • Fixed the NullReferenceException in SKCanvas.DrawTextOnPath [Ziriax]
  • Fixed the issues where the "no dependencies" builds were still using dependencies
  • Added a replacement method for some obsoleted members
  • Fixed an issue when encoding a subset of some images
  • Fixed a few text rendering issues and crashes
  • Fixed the issue where the native binaries would not reach the final app when only referenced as a transitive dependency
  • Fixed the DllNotFoundException when running in ASP.NET
  • Fixed the invalid interop on WASM for some methods
  • Fixed an issue with layering in SKCanvas.DrawPoint
  • Fixed the issue where encoding an image subset sometimes encoded the entire original image

Maintainence

  • Passing --configuration=debug to the bootstrapper now generates a debug build
  • Update samples and package versions

Known Issues

  • Not quite an issue, but still something to be aware of: microsoft/microsoft-ui-xaml#1446

    API __CxxFrameHandler4 in vcruntime140_1_app.dll is not supported for this application type. libGLESv2.dll calls this API.
    API __CxxFrameHandler4 in vcruntime140_1_app.dll is not supported for this application type. libSkiaSharp.dll calls this API.

Links

NuGet | Code Diff | Project | Milestone | Changelog | CI | Release CI

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.

Changes

  • Added extension methods to convert between the native colors and SKColorF

Links

NuGet | Changelog

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, macOS (preview) and Tizen (preview).

Changes

  • Some performance improvements for Forms
  • Added extension methods to convert between the Xamarin.Forms Color and SKColorF

Links

NuGet | Changelog

SkiaSharp.Views.Uno

A set of pre-prepared views for Uno Platform, for fully cross-platform drawing code. Current support is just a CPU surface for Android, iOS and macOS, with WASM support under way in a PR (#1333). GPU surfaces are also coming soon.

Changes

Links

NuGet | Changelog

HarfBuzzSharp

A library for text shaping, which is the process of converting Unicode text to glyph indices and positions.

Changes

  • Fixed the issue where the native binaries would not reach the final app when only referenced as a transitive dependency

Links

NuGet | Changelog

Additional Platforms

Linux

Because we love everyone in the Linux world just as well as the Microsoft and the Xamarin worlds, we have also included some pre-built Linux native binaries in a new, separate package (see #312):

SkiaSharp.NativeAssets.Linux

If you happen to be on an environment that does not have the ability to install any of the required dependencies, such as FontConfig, you can also try out the build that does not have any dependencies other that the core system libraries:

SkiaSharp.NativeAssets.Linux.NoDependencies

At the current time, these packages support several platforms/architectures/distributions.

The base platforms are:

  • Debian x64, ARM and ARM64
  • Alpine x64

However, these binaries are known to work on many other platforms:

  • Red Hat Enterprise Linux
  • CentOS
  • Raspberry Pi
  • Many Musl distributions
  • Most Debian-based distros

More builds can be requested by leaving a comment on #453, but you can easily build your own binaries by following this guide.

NuGet

Windows Nano Server

We know the .NET Core containers are very cool to use, so we now have support for using the default Windows .NET Core Docker images (see #676):

SkiaSharp.NativeAssets.NanoServer

It is not quite perfect just yet, so the app project needs a little help (see NuGet/Home#8894):

<PackageReference Include="SkiaSharp" ExcludeAssets="native" />
<PackageReference Include="SkiaSharp.NativeAssets.NanoServer" />

NuGet

Web Assembly (WASM)

Because the .NET platform and tooling for web assembly is still evolving, we can't yet commit to a final packaging format. However, this does not mean that we cannot at least help get you started.

To do this, we have pre-built a native static library for WASM that can be manually linked, or linked using a framework tooling such as Uno. This library can be found in a new package that provides a path to the actual static library (#1389):

SkiaSharp.NativeAssets.WebAssembly

NuGet

Samples

There are a large set of samples that show many different features of SkiaSharp. They are broken up into two main groups:

  • Basic - these are minimal samples that show just what is needed to use SkiaSharp
  • Gallery - these are comprehensive samples that show off new, or exciting features of SkiaSharp

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

Version 2.80.2 (Preview Build 36)

03 Sep 02:39
0ab468b
Compare
Choose a tag to compare

Version 2.80.2 (Preview Build 33)

25 Aug 20:48
d0562fc
Compare
Choose a tag to compare

Version 2.80.2 (Preview Build 19)

04 Aug 19:40
d8502c8
Compare
Choose a tag to compare

Version 2.80.2 (Preview Build 18)

02 Aug 23:17
b5c12d6
Compare
Choose a tag to compare

Version 2.80.2 (Preview Build 9)

27 Jul 19:43
b3f5975
Compare
Choose a tag to compare