Expand description
svg-renderer — a high-performance SVG-to-raster renderer powered by Skia.
§Backends
| Backend | Feature | Description |
|---|---|---|
| CPU | (always) | Renders via Skia’s raster backend. |
| Vulkan | vulkan-backend | GPU-accelerated via Skia’s Vulkan backend. |
§Pipeline mode
SvgPipelineRenderer spawns dedicated worker threads for parallel
rendering, suitable for throughput-oriented workloads.
§Quick start
use svg_renderer::{SvgRenderer, RenderOptions};
let svg_data = b"<svg xmlns='http://www.w3.org/2000/svg'></svg>";
let opts = RenderOptions::new(800, 600).unwrap();
let mut renderer = SvgRenderer::new().unwrap();
let image = renderer.render_svg(svg_data, &opts).unwrap();
println!("{}x{} RGBA image", image.width, image.height);Structs§
- CpuSvg
Pipeline Renderer - CPU-based pipeline renderer with multiple dedicated worker threads.
- CpuSvg
Renderer - CPU-based SVG renderer using Skia’s raster backend.
- Image
Data - Decoded RGBA pixel data from an SVG render operation.
- Jpeg
Options - JPEG encoding options. JPEG encoding parameters.
- Render
Options - Render options: size, clear color, MSAA sample count. Parameters controlling a single SVG render call.
- Render
Size - Render size configuration. Non-zero pixel dimensions for the output raster image.
- SvgPipeline
Renderer - Auto-selecting pipeline renderer with multiple dedicated worker threads.
- SvgRenderer
- Auto-selecting SVG renderer.
- Vulkan
SvgPipeline Renderer - Vulkan GPU pipeline renderer with multiple dedicated worker threads.
- Vulkan
SvgRenderer - Vulkan GPU-accelerated SVG renderer using Skia’s Vulkan backend.
- Webp
Options - WebP encoding options. WebP encoding parameters.
Enums§
- Jpeg
Alpha Option - JPEG alpha handling behavior. How to encode alpha-containing images as JPEG (which has no alpha).
- Jpeg
Downsample - JPEG chroma subsampling mode. JPEG chroma subsampling.
- Render
Backend - Rendering backend kind.
- SvgRender
Error - Errors that can occur during SVG rendering.
- Webp
Compression - WebP compression mode (lossy / lossless). WebP compression mode.
Functions§
- render_
svg - Convenience: creates an
SvgRenderer, renders the SVG to raw RGBA. - render_
svg_ to_ jpeg - Convenience: creates an
SvgRenderer, renders the SVG, encodes as JPEG. - render_
svg_ to_ png - Convenience: creates an
SvgRenderer, renders the SVG, encodes as PNG. - render_
svg_ to_ webp - Convenience: creates an
SvgRenderer, renders the SVG, encodes as WebP.