Svg.Skia is a repository, not just a single package. The main entry points are:
| Package or tool | Use it when | Main output | Detailed guide |
|---|---|---|---|
Svg.Skia |
You want to load SVG or Android VectorDrawable content and render with SkiaSharp. | SKPicture, bitmap, pdf, xps, svg |
Svg.Skia |
Svg.Model |
You need the intermediate picture-recording model or SVG-related helper types. | ShimSkiaSharp command model |
Svg.Model |
Svg.Custom |
You want the underlying SVG DOM used by the renderer. | SvgDocument, SvgElement, parser APIs |
Svg.Custom |
ShimSkiaSharp |
You want the cloneable drawing-command model directly. | SKPicture, SKCanvas, SKPath, SKPaint |
ShimSkiaSharp |
Svg.Controls.Skia.Uno |
You want Uno controls that render through the Skia-backed pipeline. | Svg, SvgSource, hit testing, zoom/pan |
Svg.Controls.Skia.Uno |
Svg.Controls.Skia.Avalonia |
You want Avalonia controls that render through the Skia-backed pipeline. | Svg, SvgImage, SvgSource, SvgResource |
Svg.Controls.Skia.Avalonia |
Svg.Controls.Avalonia |
You want Avalonia controls without depending on the Skia-backed Avalonia renderer path. | Svg, SvgImage, SvgSource, SvgResource |
Svg.Controls.Avalonia |
Skia.Controls.Avalonia |
You need general-purpose SKCanvas, SKPicture, SKBitmap, or SKPath controls in Avalonia. |
SKCanvasControl, SKPictureImage, and related controls |
Skia.Controls.Avalonia |
Svg.Editor.* |
You want reusable SVG editor components, from session/services up to a full Avalonia workspace. | SvgEditorSession, editor services, panels, SvgEditorWorkspace |
Editor |
Svg.CodeGen.Skia |
You want to generate checked-in or pipeline-produced C# from the picture model. | C# source from ShimSkiaSharp.SKPicture |
Svg.CodeGen.Skia |
Svg.SourceGenerator.Skia |
You want compile-time generated SKPicture classes from .svg assets. |
generated *.svg.cs files |
Svg.SourceGenerator.Skia |
svgc sample tool |
You want to generate C# source from SVG files outside Roslyn source generators. | C# files on disk | Source Generator and svgc |
Svg.Skia.Converter |
You want a CLI or global tool that batch-converts files. | png, jpg, jpeg, webp, pdf, xps | Samples and Tools |
Start with Svg.Skia if your application already uses SkiaSharp or needs direct access to SKPicture.
Start with Svg.Controls.Skia.Avalonia when the app is already on Avalonia plus Skia.
Choose Svg.Controls.Avalonia when you want the same SVG concepts exposed through the Avalonia drawing stack instead.
Start with Svg.Controls.Skia.Uno when the app is on Uno Platform and you want direct SKCanvasElement rendering plus async asset loading, hit testing, and viewport controls.
Start with Svg.Editor.Skia.Avalonia when the target is an editable SVG workspace rather than a viewer-only control.
Move down to the other Svg.Editor.* packages when the host needs only panels, dialogs, SVG mutation services, or low-level interaction helpers.
Use Svg.SourceGenerator.Skia when SVG assets should be compiled into strongly named classes during build.
Use svgc when you want the same generated-code approach as a manual step or as part of a custom pipeline.
Use Svg.Skia.Converter when you need command-line automation for folders, patterns, or repeated exports.
For extensive package-by-package coverage, continue with Packages.