All projects

SVG rendering library

Svg.Skia

Standards-minded SVG rendering across the .NET ecosystem.

StatusActive
TierFlagship
DomainGraphics
Repositorywieslawsoltes/Svg.Skia

A robust SVG 1.1 and static SVG 2 rendering library for SkiaSharp, with Avalonia controls and source-generation support.

Svg.Skia separates document interpretation from Skia drawing, framework controls, source generation, animation, and editing. The same asset can move from runtime content to compiled application resources without changing meaning.

01

SVG 1.1 support

02

SkiaSharp rendering

03

Avalonia controls

04

W3C and resvg parity lanes

One SVG model, several delivery paths.

SVG is both a document format and a rendering contract. The library keeps those concerns close enough for fidelity, yet separate enough that UI controls, build tools, and editors can share the same interpretation.

One document, four routes

  1. 01 · Document

    Parse the meaning

    Elements, paint, transforms, text, images, clipping, and filters become a reusable drawing model.

  2. 02 · Application

    Host it in UI

    Avalonia controls turn the same renderer into scalable icons, content, and application artwork.

  3. 03 · Build

    Compile the asset

    Source generation moves known SVG resources out of runtime parsing and into deterministic code.

  4. 04 · Motion

    Keep the scene alive

    Scene and animation layers preserve the document model while adding controlled temporal behavior.

Where it fits.

  • Cross-platform .NET apps rendering SVG
  • Asset pipelines that need code generation
  • Avalonia apps using scalable icons and artwork
SVG 1.1

Broad support

Static SVG 2

Partial

Avalonia

Controls

Source generation

Supported

Real output,
not a mockup.

Svg.Skia demo rendering multiple SVG files
The desktop demo exercises real SVG documents through the same core renderer.

Clear layers.
Replaceable seams.

01

Input

Portable data and framework resources enter through focused APIs.

02

Preparation

Geometry, text, images, or effects become renderer-ready operations.

03

Rendering

The backend records and submits deterministic drawing work.

W3Ctest suite lane
resvgparity comparison lane
SkiaSharpportable renderer
LiveGitHub metadata

One repository.
Multiple serious systems.

Explore the focused capabilities, their package boundaries, architecture, installation, and smallest useful example.

From package
to first frame.

Choose the package workflow used by your repository, then start from the smallest working example. Replace VERSION with the current stable or prerelease version shown on NuGet.

01 · Install
Terminal
dotnet add package Svg.Skia
dotnet add package Svg.Controls.Skia.Avalonia
02 · Use · csharp
QuickStart.cs
using Svg.Skia;
var svg = new SKSvg();
svg.Load("icon.svg");
canvas.DrawPicture(svg.Picture);

Start focused.
Compose as needed.

The repository is the source of truth.

Use the current documentation and samples, inspect changes, report issues, or support continued open-source maintenance.

CDP

Search everything.

Loading the index…

move open esc close

Preparing metadata and full-text search…