resvg 0.7 — biblioteca de renderização SVG

Foi lançado um novo e significativo release da biblioteca para rasterização SVG — resvg.

Principais mudanças:

  • Uma nova implementação de renderização de texto:
    • Quase toda a pilha, do caráter à curva de Bézier, agora está implementada em Rust:
      seleção de fontes (font matching and fallback), parsing TrueType, posicionamento de glifos de acordo com as regras SVG (SVG text layout).
      A exceção é o shaping de texto (text shaping), para o qual é utilizado
      HarfBuzz.
    • Agora, o texto será convertido em curvas de Bézier antes da renderização.
      Ou seja, o backend de renderização não precisa mais suportar texto.
    • Suporte a texto bidirecional (BIDI reordering). Exemplo.
    • Suporte a textPath. Exemplo 1, exemplo 2.
    • Suporte a writing-mode (texto vertical). Exemplo.
    • Suporte correto a word-spacing e letter-spacing. Exemplo.
  • Um novo backend experimental — Raqote (agradecimento especial a jrmuizel).
    Raqote é uma biblioteca gráfica 2D, escrita em Rust.
    Ela está em fase inicial de desenvolvimento, mas suas funcionalidades já são suficientes para
    uso no resvg.
    Seu principal benefício é que o resvg agora pode ser construído com apenas uma dependência não-Rust — HarfBuzz.
  • Suporte a shape-rendering, text-rendering e image-rendering.
  • A renderização de imagens rasterizadas foi acelerada.
  • O número total de testes chegou a 1112.
    O número de testes bem-sucedidos no Inkscape e librsvg caiu para menos de 75%.
  • Vários pequenos correções e melhorias.

Resultados dos testes. Tabela comparativa.

Fonte: linux.org.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster