Web lists-archives.com

Bug#918910: ITP: resvg -- SVG rendering library in Rust




Package: wnpp
Severity: wishlist
Owner: Andrej Shadura <andrewsh@xxxxxxxxxx>

* Package name    : resvg
  Version         : 0.5.0
  Upstream Author : Evgeniy Reizner
* URL             : https://github.com/RazrFalcon/resvg
* License         : MPL-2.0
  Programming Lang: Rust
  Description     : SVG rendering library in Rust

resvg is:
* a Rust library
* a C library
* a CLI application

to render SVG files based on a static SVG Full 1.1 subset (see SVG
support for details).

The core idea is to make a fast, small, portable, multiple backend SVG
library designed for edge-cases.

SVG can be rendered to a raster image or to a backend's canvas (e.g. to
a QWidget via QPainter).

One of the major differences from other rendering libraries is that
resvg does a lot of preprocessing before rendering. It converts shapes
to paths, resolves attributes, removes groups and invisible elements,
fixes a lot of issues in malformed SVG files. Then it creates a simple
render tree with all elements and attributes resolved. And only then it
starts to render. So it's very easy to implement a new rendering
backend.