SkiaSharpWeb.Blazor 0.6.2

dotnet add package SkiaSharpWeb.Blazor --version 0.6.2
                    
NuGet\Install-Package SkiaSharpWeb.Blazor -Version 0.6.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SkiaSharpWeb.Blazor" Version="0.6.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SkiaSharpWeb.Blazor" Version="0.6.2" />
                    
Directory.Packages.props
<PackageReference Include="SkiaSharpWeb.Blazor" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SkiaSharpWeb.Blazor --version 0.6.2
                    
#r "nuget: SkiaSharpWeb.Blazor, 0.6.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SkiaSharpWeb.Blazor@0.6.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SkiaSharpWeb.Blazor&version=0.6.2
                    
Install as a Cake Addin
#tool nuget:?package=SkiaSharpWeb.Blazor&version=0.6.2
                    
Install as a Cake Tool

SkiaSharpWeb.Blazor

Install SkiaSharpWeb.Blazor 0.6.2 for .NET 8/.NET 10. The real Skia JavaScript/WASM runtime is packaged as local static web assets, retaining native relative paths and dependency notices. Fonts are neither bundled nor implicitly downloaded.

Canvas and drawing

Use SkiaCanvas with a real CSS height. Backend accepts auto/canvas/webgl/webgpu; explicit Width/Height use native backing-store pixels. The engine handles resize and device-pixel ratio when dimensions are automatic. DrawCommands supports clear, rect, circle, line, oval, roundRect, save/restore, translate, scale, rotate and clipRect. Batches validate finite numeric values and balanced save scopes before drawing.

After Ready, call DrawAsync, InvalidateAsync, FlushAsync, GetInfoAsync, SnapshotAsync or ReadPixelAsync. Binary results are streamed, avoiding the Server message-size ceiling. GetSurfaceAsync/GetCanvasAsync expose borrowed native handles; SkiaProvider/SkiaModule expose the full initialized native namespace.

For text, paths, images, effects, documents and advanced GPU APIs, use a synchronous browser callback via Render = BrowserFunction.Module("./drawing.js", "paint") or native object methods through Module. A paint callback receives (native, canvas, info). Do not pass an asynchronous Server callback into the synchronous paint loop. Batch drawing avoids per-primitive network calls on Server.

The sample draws with native Skia, checks an exact red RGBA pixel, verifies a real PNG signature and tests unmount/remount. Full native compatibility boundaries remain in the project guide. This is a browser-engine wrapper, not an exhaustive generated C# SkiaSharp replacement.

See INTEGRATION.md for lifecycle, hosting, reference ownership, streaming and publishing.

Lifecycle in 0.6.2

SkiaCanvas.IsReady and IsDisposed expose visual lifecycle state. Concurrent cleanup awaits the native disposal fence, releases handles even after errors and retains cleanup failures. Late callbacks are suppressed after removal. Shared Razor roots now have awaitable teardown and safe late-import/creation cleanup; package-restored samples exercise template movement/update/recreation. Native Skia binaries, build prerequisites, asset paths and integrity checks are preserved.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.6.2 85 9/14/2026
0.6.1 89 9/14/2026
0.6.0 81 9/14/2026