resvg 0.7 - Bibliothèque de rendu SVG

Une nouvelle version importante de la bibliothèque de rastérisation SVG a été publiée - resvg.

Les principaux changements:

  • Implémentation complètement nouvelle du rendu de texte :
    • Presque toute la pile, du symbole à la courbe de Bézier, est désormais implémentée dans Rust :
      sélection des polices (correspondance des polices et repli), analyse TrueType, disposition des clusters de glyphes selon les règles SVG (mise en page du texte SVG).
      Une exception est la mise en forme du texte, pour laquelle il est utilisé
      HarfBuzz.
    • Le texte sera désormais converti en courbes Bizeux avant le rendu.
      Autrement dit, le backend de rendu n’est plus nécessaire pour prendre en charge le texte.
    • Prise en charge du texte bidirectionnel (réorganisation BIDI). Exemple.
    • Prise en charge de TextPath. Exemple 1, Exemple 2.
    • Prise en charge du mode d'écriture (texte vertical). Exemple.
    • Prise en charge correcte de l'espacement des mots et de l'espacement des lettres. Exemple.
  • Nouveau backend expérimental - Raqote (Remerciement spécial à jrmuzel).
    Raqote est une bibliothèque graphique 2D écrite en Rust.
    Il en est aux premiers stades de développement, mais ses capacités sont déjà suffisantes pour
    utiliser en resvg.
    Son principal avantage est que resvg peut désormais être construit avec exactement une dépendance non Rust - HarfBuzz.
  • Prend en charge le rendu de forme, le rendu de texte et le rendu d'image.
  • Le rendu des images raster a été accéléré.
  • Le nombre total de tests a atteint 1112 XNUMX.
    Le nombre de tests réussis pour Inkscape et librsvg a chuté de 75 %.
  • De nombreuses petites corrections et améliorations.

Résultats de test. Tableau de comparaison.

Source: linux.org.ru

Ajouter un commentaire