resvg 0.7 – SVG-Rendering-Bibliothek

Eine neue, bedeutende Version der SVG-Rasterisierungsbibliothek wurde veröffentlicht - resvg.

Wichtigste Änderungen:

  • Völlig neue Implementierung der Textwiedergabe:
    • Fast der gesamte Stack vom Symbol bis zur Bezier-Kurve ist mittlerweile in Rust implementiert:
      Auswahl von Schriftarten (Font-Matching und Fallback), TrueType-Analyse, Anordnung von Glyphen-Clustern nach SVG-Regeln (SVG-Textlayout).
      Eine Ausnahme bildet die Textgestaltung, für die es verwendet wird
      Harfuß.
    • Text wird jetzt vor dem Rendern in Bizeux-Kurven konvertiert.
      Das heißt, das Rendering-Backend ist zur Unterstützung von Text nicht mehr erforderlich.
    • Bidirektionale Textunterstützung (BIDI-Neuordnung). Beispiel.
    • textPath-Unterstützung. Beispiel 1, 2-Beispiel.
    • Unterstützung für den Schreibmodus (vertikaler Text). Beispiel.
    • Korrekte Unterstützung für Wort- und Buchstabenabstand. Beispiel.
  • Neues, experimentelles Backend - Raqote (besonderer Dank an jrmuizel).
    Raqote ist eine in Rust geschriebene 2D-Grafikbibliothek.
    Es befindet sich in einem frühen Entwicklungsstadium, aber seine Fähigkeiten reichen bereits aus
    Verwendung in resvg.
    Sein Hauptvorteil besteht darin, dass resvg jetzt mit genau einer Nicht-Rust-Abhängigkeit erstellt werden kann – HarfBuzz.
  • Unterstützt Form-Rendering, Text-Rendering und Bild-Rendering.
  • Das Rendern von Rasterbildern wurde beschleunigt.
  • Die Gesamtzahl der Tests erreichte 1112.
    Die Anzahl erfolgreicher Tests für Inkscape und librsvg sank um 75 %.
  • Viele kleine Korrekturen und Verbesserungen.

Testergebnisse. Vergleichstabelle.

Source: linux.org.ru

Kommentar hinzufügen