SkiaSharp

Skottie Now Available for SkiaSharp

Uno Platform contributed support for the Skottie component in SkiaSharp (a .NET binding for Skia). This addition now allows for any application using SkiaSharp to render Lottie animations and provide engaging user experiences on all the platforms already supported by Uno Platform. This new SkiaSharp preview update also provides support for Uno Platform WinUI targets as well as .NET 6 for Mobile https://youtu.be/UxuHbYlb1iw What is Skottie Skottie is a Lottie Animation Player. It is a performant native player for JSON animations. It can be used on any platform where Skia is used, including Android, iOS, Linux, and WebAssembly. Skottie builds upon the Lottie player widely used for animations, improving on the performance, feature set, and platform cohesiveness.  Some samples of rendering with Skia’s animation player, courtesy of the lottiefiles.com community  About Uno Platform For those new to Uno Platform – it allows for the creation of pixel-perfect, single-source C# and XAML apps that run natively on Windows, iOS, Android, macOS, Linux, and Web via WebAssembly. Uno Platform is free and Open Source (Apache 2.0) and available on GitHub. In addition to multi-platform support, Uno Platform provides Figma integration to those who want to get XAML generated right from designs. Give it

Blazor WebAssembly (client-side) with AOT and SkiaSharp

As we’re working to stabilize our .NET 5 support for Uno Platform, and particularly Full AOT and Profile Guided AOT, it seemed natural to experiment and validate if the work we’ve been doing could also benefit Blazor. There is always something we learn when we experiment and help push the WebAssembly toolchain forward, so top-notch tooling is available as soon as possible. It turns out that enabling AOT and native linking in Blazor WebAssembly (client-side) can work, producing as you’d expect, some great performance benefits! If you are like us and like to experiment with WebAssembly, read on to see how we turned AOT on for Blazor WebAssembly. Here it is running on our server. Make sure you run the sample more than once, just to also experience the performance difference you get with initial load vs cached WebAssembly applications. https://blazor-aot.platform.uno/   About Uno Platform For those new to Uno Platform – it allows for creation of pixel-perfect, single-source C# and XAML apps which run natively on Windows, iOS, Android, macOS, Linux and Web via WebAssembly. Uno Platform is free and Open Source (Apache 2.0) and available on GitHub.     We’ve built a simple sample “File New Project” template

SkiaSharp Support for WebAssembly via Uno Platform

Today we are proud to announce that the Uno Platform now has initial support for SkiaSharp via the Uno.SkiaSharp.Views package which was published to NuGet moments ago. Skia is an open source 2D graphics library which provides common APIs that work across a variety of hardware and software platforms. It serves as the graphics engine for Google Chrome and Chrome OS, Android, Mozilla Firefox and Firefox OS, and many other products. Head on over skiasharp-wasm.platform.uno to see Skia, the Uno Platform and WebAssembly working together using mono’s AOT engine. For the best experience we recommend using a desktop computer and the latest canary version of your favorite browser as the specification is under construction and support for WebAssembly is rapidly improving. You can find the source code for skiasharp-wasm.platform.uno over at unoplatform/Uno.SkiaSharp. Internally this application uses SkiaSharp, a .NET binding to P/Invoke the Skia API and a custom Skia build to provide the C API to allow for the .NET interop. Inside of the Uno.SkiaSharp.Views package you’ll find support for the SKXamlCanvas UWP control which enables drawing using Skia in a specific section of the XAML visual tree. You can experiment with SKXamlCanvas by playing with this sample in our samples repository. Alternatively, you can take it for a spin with the following XAML and Code Behind. XAML: