PlutoVG 1.0.0

11. mars fant den første store utgivelsen av 1.0.0 av XNUMXD-vektorgrafikkbiblioteket sted. PlutoVG, skrevet i C og distribuert under MIT-lisensen. Biblioteket har ingen tredjepartsavhengigheter.

Bibliotekets funksjoner:

  • linjetegningsstiler;
  • heldekkende, gradient- og teksturert skyggelegging;
  • fonter og tekst;
  • beskjæring og sammensetning;
  • transformasjoner;
  • Bilder.

Biblioteket brukes i andre prosjekter av forfatteren: LunaSVG и PlutoSVG.

Endringer:

  • Bruk SemVer for versjonsnummerering.
  • La til makroene PLUTOVG_EMPTY_POINT og PLUTOVG_EMPTY_RECT.

Kode:

#inkludere int main(void) { const int bredde = 150; const int høyde = 150; const float senter_x = bredde / 2.f; const float senter_y = høyde / 2.f; const float ansiktsradius = 70; const float munn_radius = 50; const float øye_radius = 10; const float øye_offset_x = 25; const float øye_offset_y = 20; const float øye_x = senter_x — øye_offset_x; const float øye_y = senter_y — øye_offset_y; plutovg_overflate_t* overflate = plutovg_overflate_opprett(bredde, høyde); plutovg_lerret_t* lerret = plutovg_lerret_opprett(overflate); plutovg_lerret_save(lerret); plutovg_canvas_arc(lerret, senter_x, senter_y, ansiktsradius, 0, PLUTOVG_TWO_PI, 0); plutovg_canvas_set_rgb(lerret, 1, 1, 0); plutovg_canvas_fill_preserve(lerret); plutovg_canvas_set_rgb(lerret, 0, 0, 0); plutovg_canvas_set_line_width(lerret, 5); plutovg_canvas_stroke(lerret); plutovg_canvas_restore(lerret); plutovg_canvas_save(lerret); plutovg_canvas_arc(lerret, øye_x, øye_y, øye_radius, 0, PLUTOVG_TWO_PI, 0); plutovg_canvas_arc(lerret, senter_x + øye_offset_x, øye_y, øye_radius, 0, PLUTOVG_TWO_PI, 0); plutovg_lerret_set_rgb(lerret, 0, 0, 0); plutovg_lerret_fill(lerret); plutovg_lerret_restore(lerret); plutovg_lerret_save(lerret); plutovg_lerret_arc(lerret, senter_x, senter_y, munn_radius, 0, PLUTOVG_PI, 0); plutovg_lerret_set_rgb(lerret, 0, 0, 0); plutovg_lerret_set_linjebredde(lerret, 5); plutovg_lerret_stroke(lerret); plutovg_lerret_restore(lerret); plutovg_surface_write_to_png(surface, "smiley.png"); plutovg_canvas_destroy(lerret); plutovg_surface_destroy(surface); returner 0; }

tegner 😃 og lagrer det i filen smiley.png. 🙂

Kilde: linux.org.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig webhotell med DDoS-beskyttelse, VPS VDS-servere | ProHoster