Π‘Π΅Π³ΠΎΠ΄Π½Ρ, Π² Π΄Π΅Π½Ρ 20-Π»Π΅ΡΠΈΡ SAIL — Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ C/C++ — Π²ΡΡΠ΅Π» ΡΠ΅Π»ΠΈΠ· 0.9.0.
ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠΊΡΠΈΠ½ΡΠΎΡ: https://sail.software/demo.webp
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ:
- Π§Π΅ΡΡΡΠ΅ ΡΡΠΎΠ²Π½Ρ API Π΄Π»Ρ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠΈΡ Π½ΡΠΆΠ΄.
Π‘Π°ΠΌΡΠΉ Π½Π΅Π³Π»ΡΠ±ΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΡ — junior, Π³Π΄Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΡΠ΅ΠΉΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π²ΡΡ ΡΡΡΠΎΡΠ΅ΠΊ ΠΊΠΎΠ΄Π°:
struct sail_image *image; SAIL_TRY(sail_load_from_file(path, &image));
Π‘Π°ΠΌΡΠΉ Π³Π»ΡΠ±ΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΡ — Π·Π°Π³ΡΡΠ·ΠΊΠ° Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠ°Π½ΠΈΡΠ½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ· Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² (Π½Π΅ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΡΡΠΈ).
- ΠΠ°Π³ΡΡΠ·ΠΊΠ° ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ.
- ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°Π΅ΠΌΡΠ΅ ΠΊΠΎΠ΄Π΅ΠΊΠΈ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄Π΅ΠΊΠΈ Π² ΠΎΠ΄Π½Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ (-DSAIL_COMBINE_CODECS=ON) Π΅ΡΠ»ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠ°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ Π½Π΅ΡΠ΄ΠΎΠ±Π½Π°.
- ΠΠ°ΠΏΠΈΡΠ°Π½Π° Π½Π° C11 Ρ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΎΠΌ Π½Π° C++11.
- ΠΠΎΡΡΡΠΏΠ½Π° Π½Π° Windows, Linux, macOS.
- ΠΠΎΡΡΡΠΏΠ½Π° Π² ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°Ρ Conan, vcpkg, brew (Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ PR ΠΎΠΆΠΈΠ΄Π°ΡΡ ΡΠ»ΠΈΡΠ½ΠΈΡ).
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ: JPEG, PNG, TIFF, GIF, AVIF, WEBP, JPEG XL ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
- ΠΡΡΡΡΠ΅Π΅ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Ρ ΡΠ²ΠΎΠΈΡ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΠ² Π² Π»ΠΈΡΠ΅ STB ΠΈΠ»ΠΈ FreeImage.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru