PlutoVG 1.0.0

Air 11 Màrt, chaidh a’ chiad fhoillseachadh mòr de 1.0.0 den leabharlann grafaigean vector XNUMXD a chumail PlutoVG, sgrìobhte ann an C agus air a chuairteachadh fo chead MIT. Chan eil eisimeileachd treas-phàrtaidh aig an leabharlann.

Feartan leabharlainn:

  • stoidhlichean tarraing loidhne;
  • sgàileadh cruaidh, caisead agus inneach;
  • clòidean agus teacsa;
  • gearradh agus sgrìobhadh;
  • cruth-atharraichean;
  • Dealbhan.

Tha an leabharlann air a chleachdadh ann am pròiseactan eile leis an ùghdar: LunaSVG и PlutoSVG.

Atharraichean:

  • Cleachd SemVer airson àireamhachadh dreach.
  • Macros air a chur ris PLUTOVG_EMPTY_POINT agus PLUTOVG_EMPTY_RECT.

Còd:

# gabhail a-steach int prìomh (falamh) {const int width = 150; seasmhach int height = 150; const fleòdradh center_x = leud / 2.f; const fleòdradh center_y = àirde / 2.f; const fleòdradh face_radius = 70; const fleòdradh mouth_radius = 50; const fleòdradh eye_radius = 10; const fleòdradh eye_offset_x = 25; const fleòdradh eye_offset_y = 20; const fleòdradh eye_x = center_x - eye_offset_x; const fleòdradh eye_y = center_y - eye_offset_y; plutovg_surface_t * uachdar = plutovg_surface_create (leud, àirde); plutovg_canvas_t * canabhas = plutovg_canvas_create (uachdar); plutovg_canvas_save (canabhas); plutovg_canvas_arc (canabhas, meadhan_x, meadhan_y, aghaidh_radius, 0, PLUTOVG_TWO_PI, 0); plutovg_canvas_set_rgb (canabhas, 1, 1, 0); plutovg_canvas_fill_preserve (canabhas); plutovg_canvas_set_rgb (canabhas, 0, 0, 0); plutovg_canvas_set_line_width (canabhas, 5); plutovg_canvas_stroke (canabhas); plutovg_canvas_restore (canabhas); plutovg_canvas_save (canabhas); plutovg_canvas_arc (canabhas, eye_x, eye_y, eye_radius, 0, PLUTOVG_TWO_PI, 0); plutovg_canvas_arc (canabhas, centre_x + eye_offset_x, eye_y, eye_radius, 0, PLUTOVG_TWO_PI, 0); plutovg_canvas_set_rgb (canabhas, 0, 0, 0); plutovg_canvas_fill (canabhas); plutovg_canvas_restore (canabhas); plutovg_canvas_save (canabhas); plutovg_canvas_arc (canabhas, center_x, center_y, mouth_radius, 0, PLUTOVG_PI, 0); plutovg_canvas_set_rgb (canabhas, 0, 0, 0); plutovg_canvas_set_line_width (canabhas, 5); plutovg_canvas_stroke (canabhas); plutovg_canvas_restore (canabhas); plutovg_surface_write_to_png (uachdar, "gàire.png"); plutovg_canvas_destroy (canabhas); plutovg_surface_destroy (uachdar); tilleadh 0; }

tarraing 😃 agus sàbhail e san fhaidhle smiley.png. 🙂

Source: linux.org.ru

Cuir beachd ann