بموجب ترخيص معهد ماساتشوستس للتكنولوجيا نشرت مكتبة فك تشفير الصور عبر الأنظمة الأساسية SAIL. SAIL عبارة عن إعادة تسمية لبرامج الترميز من عارض صور غير مدعوم منذ فترة طويلة تمت إعادة كتابته بلغة C Kالسنجاب، ولكن مع واجهة برمجة تطبيقات مجردة عالية المستوى والعديد من التحسينات. الجمهور المستهدف: مشاهدو الصور، تطوير الألعاب، تحميل الصور إلى الذاكرة لأغراض أخرى. المكتبة قيد التطوير، ولكنها قابلة للاستخدام بالفعل. لا يتم ضمان توافق الكود الثنائي والكود المصدري في هذه المرحلة من التطوير.
الميزات:
مكتبة بسيطة وصغيرة الحجم وسريعة مكتوبة بلغة C دون تبعيات طرف ثالث (باستثناء برامج الترميز)؛
واجهة برمجة تطبيقات بسيطة ومفهومة وفي نفس الوقت قوية لجميع الاحتياجات؛
الارتباطات لـ C++؛
يتم دعم تنسيقات الصور بواسطة برامج الترميز المحملة ديناميكيًا؛
قراءة (وكتابة) الصور من ملف أو ذاكرة أو حتى مصدر البيانات الخاص بك؛
تحديد نوع الصورة عن طريق امتداد الملف أو عن طريق الرقم السحري;
التنسيقات المدعومة حاليًا: APNG (للقراءة، Windows فقط)، JPEG (للقراءة، الكتابة)، PNG (للقراءة، الكتابة).
والعمل جارٍ لإضافة صيغ جديدة. يدعم KSquirrel-libs حوالي 60 تنسيقًا بطريقة أو بأخرى، والتنسيقات الأكثر شيوعًا هي الأولى في السطر؛
يمكن لعمليات القراءة دائمًا إخراج وحدات البكسل بتنسيق RGB وRGBA؛
يمكن لبعض برامج الترميز إخراج وحدات البكسل في قائمة أكبر من التنسيقات؛
يمكن لمعظم برامج الترميز أيضًا إخراج وحدات البكسل المصدرية. وهذا مفيد، على سبيل المثال، لأولئك الذين يريدون الحصول على معلومات كاملة من صور CMYK أو YCCK؛
قراءة وكتابة الملفات الشخصية للمحكمة الجنائية الدولية؛
أمثلة في C، كيو تي، SDL؛
المنصات المدعومة:
Windows (المثبت)، وmacOS (المشروب)، وLinux (Debian).
ما لا توفره SAIL:
تعديل الصوره؛
وظائف تحويل مساحة اللون بخلاف تلك التي توفرها برامج الترميز الأساسية (libjpeg، وما إلى ذلك)؛
وظائف إدارة الألوان (استخدام ملفات تعريف ICC، وما إلى ذلك)
أبسط مثال لفك التشفير في لغة C:
هيكل الشراع_context *context;
SAIL_TRY(sail_init(&context));
هيكل الشراع_الصورة * الصورة؛
حرف غير موقع *image_pixels;