SAIL 0.9.0-pre12 кескінді декодтау кітапханасының шығарылымы

SAIL кескінді декодтау кітапханасына бірнеше маңызды жаңартулар жарияланды, олар бұрыннан істен шыққан KSquirrel кескінді қарау құралының кодектерінің C қайта жазылуын қамтамасыз етеді, бірақ жоғары деңгейлі дерексіз API және көптеген жақсартулар бар. Кітапхана пайдалануға дайын, бірақ әлі де үздіксіз жетілдірілуде. Екілік және API үйлесімділігіне әлі кепілдік берілмейді. Демонстрация.

SAIL мүмкіндіктері

  • Кітапхананы пайдалану жылдам және оңай;
  • C11 тілінде C++ 17 байланыстыруымен жазылған;
  • Кескін пішімдерін қолдау клиент тарапынан тәуелсіз жойылуы және қосылуы мүмкін динамикалық жүктелген кодектер арқылы жүзеге асырылады;
  • Файлдан, жадтан, меншікті көздерден оқу;
  • Көп бетті және анимациялық кескіндерді қолдау;
  • Танымал пішімдерді қолдау әлі де libjpeg, libpng және т.б. сәйкес кітапханаларды пайдалану арқылы жүзеге асырылады.
  • Кросс-платформа: Linux, Windows, macOS;
  • «Зондтау» - пикселдерді декодтаусыз кескін туралы ақпаратты алу;
  • Адам нысанының атаулары (FIMULTIBITMAP жоқ);
  • ICC профильдерін оқу және жазу;
  • RGBA немесе BGRA пикселдерін жібереді;
  • Егер кодек қолдаса, бастапқы пикселдерді (мысалы, CMYK) қайтарады;

Соңғы жарияланғаннан кейінгі өзгерістер тізімі:

  • API айтарлықтай жақсартылды және жеңілдетілді. Болды: struct sail_context *контекст; SAIL_TRY(sail_init(&контекст)); struct sail_image *сурет; unsigned char *image_pixels; SAIL_TRY(sail_read(жол, контекст, &кескін, (жарамсыз **)&сурет_пикселдері)); ...бос(сурет_пиксельдері); желкенді_жою_сурет(сурет);

    Енді: struct sail_image *image; SAIL_TRY(желкен_оқыған_файл(жол, &кескін); ... желкен_жою_кескін(сурет);

  • BMP, GIF, TIFF пішімдері қосылды;
  • UWP қоспағанда, барлық платформаларда VCPKG қол жетімділігі;
  • Эталондық өнімділік сынақтары жарияланған;
  • C++ байланыстыру C++ 17 тіліне ауыстырылды;
  • Жадты бөлу функциялары оларды өзіңіздікімен оңай ауыстыруға болатындай етіп бір жерде жинақталған, бірақ қазіргі уақытта мұны тек қайта құрастыру арқылы жасауға болады;
  • Пайдаланушылар енді SAIL қосылу үшін CMake find_package() пайдалана алады;
  • Статикалық жинақтау мүмкіндігі қосылды (SAIL_STATIC=ON);
  • Барлық кодектерді бір жалпы кітапханаға жинақтау мүмкіндігі қосылды (SAIL_COMBINE_CODECS=ON);
  • µnit негізіндегі сынақтарды қосу бойынша жұмыс басталды;

Ұсынылатын орнату әдісі

  • Linux - vcpkg, Debian ережелері де қол жетімді
  • Windows - vcpkg
  • macOS - қайнату

Ақпарат көзі: opennet.ru

пікір қалдыру