resvg 0.7 - SVG rendering library

Ang isang bago, makabuluhang release ng SVG rasterization library ay inilabas - resvg.

Pangunahing pagbabago:

  • Ganap na bagong pagpapatupad ng pag-render ng teksto:
    • Halos ang buong stack mula sa simbolo hanggang sa Bezier curve ay ipinatupad na ngayon sa Rust:
      pagpili ng mga font (pagtutugma ng font at fallback), pag-parse ng TrueType, pag-aayos ng mga cluster ng glyph ayon sa mga panuntunan ng SVG (layout ng teksto ng SVG).
      Ang isang pagbubukod ay ang paghubog ng teksto, kung saan ito ginagamit
      HarfBuzz.
    • Iko-convert na ngayon ang text sa Bizeux curves bago i-render.
      Ibig sabihin, hindi na kailangan ang rendering backend para suportahan ang text.
    • Bidirectional text support (BIDI reordering). Halimbawa.
    • suporta sa textPath. halimbawa 1, Halimbawa ng 2.
    • Suporta para sa writing-mode (vertical text). Halimbawa.
    • Tamang suporta para sa word-spacing at letter-spacing. Halimbawa.
  • Bago, pang-eksperimentong backend - Raqote (espesyal na pasasalamat sa jrmuizel).
    Ang Raqote ay isang 2D graphics library na nakasulat sa Rust.
    Ito ay nasa mga unang yugto ng pag-unlad, ngunit ang mga kakayahan nito ay sapat na para sa
    gamitin sa resvg.
    Ang pangunahing bentahe nito ay ang resvg ay maaari na ngayong mabuo na may eksaktong isang non-Rust dependency - HarfBuzz.
  • Sinusuportahan ang shape-rendering, text-rendering at image-rendering.
  • Ang pag-render ng larawan ng raster ay pinabilis.
  • Ang kabuuang bilang ng mga pagsubok ay umabot sa 1112.
    Bumaba ng 75% ang bilang ng mga matagumpay na pagsubok para sa Inkscape at librsvg.
  • Maraming maliliit na pag-aayos at pagpapahusay.

Mga resulta ng pagsubok. Tala ng pagkukumpara.

Pinagmulan: linux.org.ru

Magdagdag ng komento