resvg 0.7 — an SVG rendering library

A new significant release of the SVG rasterization library has been released — resvg.

Key Changes:

  • A completely new implementation of text rendering:
    • Almost the entire stack from character to Bézier curve is now implemented in Rust:
      font matching and fallback, TrueType parsing, clustering glyphs according to SVG rules (SVG text layout).
      The exception is text shaping, for which
      HarfBuzz.
    • Text will now be converted to Bézier curves before rendering.
      This means that the rendering backend is no longer required to support text.
    • Support for bidirectional text (BIDI reordering). Example.
    • Support for textPath. Example 1, example 2.
    • Support for writing-mode (vertical text). Example.
    • Correct support for word-spacing and letter-spacing. Example.
  • A new experimental backend — Raqote (special thanks to jrmuizel).
    Raqote is a 2D graphics library written in Rust.
    It is in the early stages of development, yet its capabilities are already sufficient for
    use in resvg.
    Its main advantage is that resvg can now be built with exactly one non-Rust dependency — HarfBuzz.
  • Support for shape-rendering, text-rendering, and image-rendering.
  • Raster image rendering has been accelerated.
  • The total number of tests has reached 1112.
    The number of successfully passed tests for Inkscape and librsvg has dropped below 75%.
  • Many small fixes and improvements.

Testing results. Comparison table.

Source: linux.org.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster