Die Veröffentlichung der C/C++-Bilddekodierungsbibliothek SAIL 0.9.0 wurde veröffentlicht, die zum Erstellen von Bildbetrachtern, zum Laden von Bildern in den Speicher, zum Laden von Ressourcen beim Entwickeln von Spielen usw. verwendet werden kann. Die Bibliothek setzt die Entwicklung der ksquirrel-libs-Bildformatdecoder aus dem KSquirrel-Programm fort, die von C++ auf die C-Sprache umgeschrieben wurden. Das KSquirrel-Programm existiert seit 2003 (heute ist das Projekt genau 20 Jahre alt), aber die Entwicklung des Viewer wurde 2008 zusammen mit KDE3 eingestellt. Der SAIL-Code wird unter der MIT-Lizenz vertrieben. Unterstützt die Arbeit unter Windows, macOS und Linux.
Hauptmerkmale:
- Vier API-Ebenen. Die flachste Immersionsstufe ist Junior, wo es möglich ist, nur einen Frame mit zwei Codezeilen zu laden: struct Sail_image *image; SAIL_TRY(sail_load_from_file(path, &image));
Die tiefste Stufe des Eintauchens ist das Laden animierter oder mehrseitiger Bilder aus nicht standardmäßigen Quellen (nicht aus einer Datei oder aus dem Speicher).
- Unterstützt das Laden aus Dateien oder aus dem Speicher.
- Dynamisch geladene Codecs. Die Möglichkeit, Codecs in einer Bibliothek zu kompilieren (-DSAIL_COMBINE_CODECS=ON), wenn dynamisches Laden aus irgendeinem Grund unpraktisch ist.
- Der Code ist in C11 mit C++11-Bindung geschrieben.
- Verfügbar in den Paketmanagern Conan, vcpkg und brew (einige PRs müssen noch zusammengeführt werden).
- Unterstützt alle modernen Bildformate: JPEG, PNG, TIFF, GIF, AVIF, WEBP, JPEG XL usw.
- Übertrifft fast alle Konkurrenten wie STB oder FreeImage.

Source: opennet.ru
