resvg 0.7 - Pirtûkxaneya pêşkêşkirina SVG

Вышел новый, значительный релиз библиотеки для растеризации SVG — resvg.

Guhertinên sereke:

  • Полностью новая реализация отрисовки текста:
    • Почти весь стек от символа до кривой Безье теперь реализован на Rust:
      подбор шрифтов (font matching and fallback), парсинг TrueType, расстановка кластеров глифов по правилам SVG (SVG text layout).
      Исключением является шейпинг (text shaping), для которого используется
      HarfBuzz.
    • Текст теперь будет конвертироваться в кривые Бизъе до рендеринга.
      То есть бекенд отрисовки теперь не обязан поддерживать текст.
    • Поддержка двунаправленного текста (BIDI reordering). Nimûne:.
    • Поддержка textPath. nimûne 1, Mînakek 2.
    • Поддержка writing-mode (вертикальный текст). Nimûne:.
    • Корректная поддержка word-spacing и letter-spacing. Nimûne:.
  • Новый, экспериментальный бекенд — Raqote (отдельное спасибо jrmuizel).
    Raqote — это графическая 2D библиотека, написанная на Rust.
    Она находится в начальной стадии разработки, при этом её возможностей уже достаточно для
    использования в resvg.
    Основным её преимуществом является то, что resvg теперь можно собрать ровно с одной не Rust зависимостью — HarfBuzz.
  • Поддержка shape-rendering, text-rendering и image-rendering.
  • Ускорена отрисовка растровых изображений.
  • Общее количество тестов достигло 1112-х.
    Количество успешно пройденных тестов у Inkscape и librsvg упало за 75%.
  • Gelek rastkirin û başkirinên piçûk.

Результаты тестирования. Сравнительная таблица.

Source: linux.org.ru

Add a comment