resvg 0.7 - SVG レンダリング ライブラリ

SVG ラスタライズ ライブラリの新しい重要なリリースがリリースされました - 解像度.

主な変更点:

  • テキストレンダリングの完全に新しい実装:
    • シンボルからベジェ曲線までのスタックのほぼ全体が Rust に実装されました。
      フォントの選択 (フォントのマッチングとフォールバック)、TrueType の解析、SVG ルールに従ったグリフ クラスターの配置 (SVG テキスト レイアウト)。
      例外はテキストの整形であり、これが使用されます。
      HarfBuzz.
    • テキストはレンダリング前に Bizeux 曲線に変換されるようになりました。
      つまり、レンダリング バックエンドはテキストをサポートする必要がなくなりました。
    • 双方向テキストのサポート (BIDI 並べ替え)。 .
    • textPath のサポート。 例1, 2の例.
    • 書き込みモード (縦書き) のサポート。 .
    • 単語間隔と文字間隔が正しくサポートされました。 .
  • 新しい実験的なバックエンド - ラコート (特に感謝します ジュルムイゼル).
    Raqote は Rust で書かれた 2D グラフィックス ライブラリです。
    開発の初期段階にありますが、その機能はすでに十分なものになっています。
    resvgで使用します。
    その主な利点は、resvg が XNUMX つの非 Rust 依存関係 (HarfBuzz) だけで構築できることです。
  • 形状レンダリング、テキストレンダリング、画像レンダリングをサポートします。
  • ラスター画像のレンダリングが高速化されました。
  • 検査総数は1112件に達した。
    Inkscape と librsvg のテスト成功数は 75% 減少しました。
  • 多くの小さな修正と改善。

試験結果。 比較表。

出所: linux.org.ru

コメントを追加します