Table of Contents

Version 1.53.2

GPU rendering and SVG canvas support (pre-release) · Preview only · NuGet · GitHub Release

Highlights

A pre-release introducing two major capabilities: hardware-accelerated GPU rendering via OpenGL and SVG output via SKSvgCanvas. This release includes all changes from v1.53.1.2 and adds the ability to assemble a GRGlInterface from any GL library. Both GPU and SVG features were in beta and subject to API changes.

Breaking Changes

None in this release.

New Features

GPU & Rendering

  • OpenGL support — Hardware-accelerated rendering via OpenGL on all platforms except UWP (which was planned for DirectX/ANGLE support). (#138)

  • GRGlInterface.AssembleGlInterface / AssembleGlesInterface — Assemble a GL interface from any GL library by providing a function pointer lookup callback:

    var openGLES = ObjCRuntime.Dlfcn.dlopen(
        "/System/Library/Frameworks/OpenGLES.framework/OpenGLES", 0);
    var glInterface = GRGlInterface.AssembleGlesInterface((ctx, name) => {
        return ObjCRuntime.Dlfcn.dlsym(openGLES, name);
    });
    

SVG

  • SKSvgCanvas — Create a canvas that writes SVG output to an XML stream. Partial SVG feature coverage — not all Skia drawing operations are supported in SVG output. (#107)

    using (var writer = new SKXmlStreamWriter(skStream))
    using (var canvas = SKSvgCanvas.Create(bounds, writer))
    {
        // draw as normal — canvas is just an SKCanvas
    }
    

GPU Beta 2 (August 24, 2016)

Added GRGlInterface.AssembleGlInterface and AssembleGlesInterface for assembling a GL interface from any GL library.

NuGet


SVG Beta 1 (August 25, 2016)

Added SKSvgCanvas for creating a canvas that writes SVG output to an XML stream.

NuGet


GPU Beta 1 (August 19, 2016)

Initial OpenGL support across all platforms (except UWP).

NuGet