Mushure memwedzi mitatu yekushanda nesimba, 0.15 yeThorVG vector graphics library, yakanyorwa muC++ (C++14 standard) uye yakagoverwa pasi peMIT rezenisi, yakaburitswa. Raibhurari inoshandiswa kupa vector graphics mumapurojekiti akadai Tizen OS, Godot Injini, LVGL uye vatambi dotLottie.
Thor Vector Graphics (ThorVG) ibhuku rinorema uye rinotakurika rakavhurika sosi raibhurari rakagadzirirwa kupa vector zviitiko uye mifananidzo, kusanganisira mafomati. SVG Diki 1.2, Lottie uye yemuno TVG fomati (SVG, yakamanikidzwa ne LZW).
Raibhurari inopa zviri nyore APIs yekuunza kunze, kugadzira uye kuratidza vector graphics, pamwe nekuendesa kunze kune akasiyana graphic mafomati, izvo zvinoita kuti ive yepasirese kuti ishandiswe mumapuratifomu akasiyana siyana uye maapplication ekuona graphic content:
#include "Example.h" uchishandisa namespace std; void exportGif() {auto animation = tvg::Animation::gen(); auto mufananidzo = animation-> mufananidzo (); kana (!tvgexam::verify(picture->load(EXAMPLE_DIR"/lottie/walker.json")))) dzoka; mufananidzo-> saizi(800, 800); auto saver = tvg::Saver::gen(); kana (!tvgexam::verify(saver->save(std::move(animation), "./test.gif"))) dzoka; saver-> sync(); cout << "Yakabuditswa kunze kune test.gif." <<endl; } int main(int argc, char **argv) {kana (tvgexam::verify(tvg::Initializer::init(0))) {exportGif(); tvg::Initializer::term(); } kudzokera 0; }
Raibhurari inouyawo nezvishandiso lottie2gif, svg2png uye svg2tvg.
Iyo vhezheni itsva ine akati wandei akakosha ekuvandudza:
- yakavandudza zvakanyanya kuita, kushanda uye kugadzikana kweWebGPU injini;
- kanenge katatu kuwedzera kwekurohwa kwekuita basa;
- kuvandudzwa kwekuita kwe masking uye nzira dzakasiyana-siyana dzekufukidza;
- zvakanyanya kuderedza GPU ndangariro mutoro;
- yakawedzera tsigiro yekucheka maratidziro uye kutonga nzvimbo dzinoonekwa dzechidzitiro;
- Lottie animation kuita yakagadziridzwa zvakanyanya;
- Iyo yakakura yekuwedzera kuThorVG itsigiro yezvikamu muLottie animations;
- akawedzera anodyidzana maficha kuLottie animations;
- animation yemavara yakavandudzwa;
- yakagadziridzwa algorithm yekuverenga mapoinzi ekudzora eBezier curves ane offset;
- yakawedzera kugona kushandisa akasiyana-siyana emashure-ekugadzirisa mhedzisiro kune chiitiko;
- yakawedzera tsigiro yemakomboni mavara glyphs;
- kuumbwa kwekuita kwakagadziridzwa muinjini yeOpenGL;
- akawedzera itsva yakagadzikana uye yekuedza APIs;
- tsikidzi dzakawanda dzakagadziriswa.
Source: linux.org.ru
