Hoʻokuʻu ʻia o ka waihona wehewehe kiʻi SAIL 0.9.0-pre12

Ua paʻi ʻia kekahi mau mea hou i ka hale waihona decoding kiʻi SAIL, e hāʻawi ana i kahi kākau hou C o nā codecs mai ka mea nānā kiʻi KSquirrel lōʻihi, akā me kahi API abstract kiʻekiʻe a me nā hoʻomaikaʻi he nui. Mākaukau ka waihona no ka hoʻohana ʻana, akā ke hoʻomaikaʻi mau ʻia nei. ʻAʻole i hōʻoia ʻia ka hoʻohālikelike ʻana i ka binary a me ka API. Hōʻike.

Nā hiʻohiʻona o SAIL

  • ʻO ka hale waihona puke wikiwiki a maʻalahi hoʻi;
  • Kākau ʻia ma C11 me nā paʻa i C++17;
  • Hoʻokō ʻia ke kākoʻo no nā kiʻi kiʻi e nā codec i hoʻouka ʻia, hiki ke hoʻoneʻe ʻia a hoʻohui ʻia ma ka ʻaoʻao o ka mea kūʻai aku;
  • Heluhelu mai ka waihona, hoʻomanaʻo, nā kumu ponoʻī;
  • Kākoʻo no nā ʻaoʻao he nui a me nā kiʻi animated;
  • Ke kākoʻo ʻia nei ke kākoʻo ʻana i nā palapala kaulana me ka hoʻohana ʻana i nā hale waihona puke libjpeg, libpng, etc.
  • Paena kea: Linux, Windows, macOS;
  • "Probing" - ka loaʻa ʻana o ka ʻike e pili ana i kahi kiʻi me ka ʻole decoding pixels;
  • Nā inoa hui kanaka (ʻaʻohe FIMULTIBTMAP);
  • Heluhelu a kākau i nā moʻolelo ICC;
  • Hoʻouna i nā pixels RGBA a i ʻole BGRA;
  • Hoʻihoʻi i nā pika kumu (no ka laʻana, CMYK) inā kākoʻo ʻia e ke codec;

Ka papa inoa o nā hoʻololi mai ka hoʻopuka hope ʻana:

  • Ua hoʻomaikaʻi maikaʻi ʻia ka API a maʻalahi. ʻO ia: struct sail_context *context; SAIL_TRY(sail_init(&context)); struct sail_image *kiʻi; char unsigned *image_pixels; SAIL_TRY(sail_read(ala, pōʻaiapili, &kiʻi, (ʻole **)&kiʻi_pixels)); ... manuahi(image_pixels); sail_destroy_image(kiʻi);

    Ano: struct sail_image *kiʻi; SAIL_TRY(sail_read_file(ala, & kiʻi); ... sail_destroy_image(kiʻi);

  • Hoʻohui ʻia nā palapala BMP, GIF, TIFF;
  • Loaʻa ma VCPKG ma nā kahua āpau koe wale nō ʻo UWP;
  • Paʻi ʻia nā hōʻike hoʻokō ʻo Benchmark;
  • Ua hoʻoneʻe ʻia ka paʻa C++ i C++17;
  • ʻOhi ʻia nā hana hoʻokaʻawale hoʻomanaʻo ma kahi hoʻokahi i hiki ke maʻalahi ke hoʻololi ʻia me kāu ponoʻī, akā i kēia manawa hiki ke hana ʻia ma ka hoʻopili hou ʻana;
  • Hiki i nā mea hoʻohana ke hoʻohana iā CMake find_package() e hoʻopili iā SAIL;
  • Hoʻohui i ka hiki ke hoʻopili statically (SAIL_STATIC=ON);
  • Hoʻohui i ka hiki ke hōʻuluʻulu i nā codec a pau i loko o kahi waihona maʻamau (SAIL_COMBINE_CODECS=ON);
  • Ua hoʻomaka ka hana ma ka hoʻohui ʻana i nā hoʻokolohua µnit;

Paipai ʻia ke ʻano hoʻonohonoho

  • Linux - vcpkg, loaʻa pū nā lula Debian
  • Windows - vcpkg
  • macOS - hoʻoinu

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka