البنية التقنية والمعالجة بدون فقدان للجودة
لماذا تضمن المعالجة الثنائية المباشرة بقاء بكسلاتك متطابقة تماماً مقارنة بإعادة الضغط عبر عنصر canvas.
1. المشكلة في أدوات الويب التقليدية
تعتمد الغالبية الساحقة من مواقع معالجة الصور على عنصر <canvas> في المتصفح، حيث ترسم صورتك ثم تعيد تصديرها بجودة منخفضة عبر canvas.toDataURL('image/jpeg', 0.92).
يؤدي هذا الأسلوب إلى مشاكل جسيمة:
- ضغط مشوّه: يُعاد حساب كل بكسل وضغطه للمرة الثانية، مما ينتج تشويشاً وتراجعاً ملحوظاً في الدقة.
- فقدان دقة الألوان: يتم تجريد ملف تعريف الألوان الأصلي ICC أو تحويله بشكل عشوائي إلى sRGB.
- تدمير تقنية HDR: تُفقد بيانات Ultra HDR وخرائط التباين بالكامل وتتحول الصورة إلى SDR بـ 8 بت فقط.
2. أسلوب Clean: المعالجة الثنائية المباشرة
لا تقوم Clean بفك ضغط البكسلات لإعادة تشكيلها على الإطلاق. بل تمر أدواتنا البرمجية المكتوبة بلغة TypeScript مباشرة عبر هيكل الملف الثنائي داخل Web Worker يعمل على جهازك:
- صيغة JPEG: نقرأ مقاطع الملف (من APP0 إلى APP15). وتُنسخ تدفقات بيانات البكسل المضغوطة (من مقطع SOS حتى EOI) بايت ببايت دون مساس. وتُزال المقاطع المستهدفة فقط (مثل APP1 و APP11 C2PA و APP13 IPTC).
- صيغة PNG: نحافظ على الكتل الهيكلية الأساسية (
IHDRوPLTEوIDATوIEND) ونزيل الكتل النصية الزائدة فقط (tEXtوzTXtوiTXtوcaBX). - صيغة WebP: نقرأ ترويسات RIFF ونعدل حاويات البيانات الوصفية فقط دون أي تدخل في تدفقات VP8 أو VP8L.
3. الحفاظ على الألوان والمدى الديناميكي العالي HDR
تحتفظ Clean افتراضياً بملفات تعريف الألوان ICC ووسم اتجاه العرض. بالإضافة إلى ذلك، يتم الحفاظ على بيانات Ultra HDR وخرائط تباين الإضاءة (hdrgm و GContainer) والصور الثانوية MPF حتى تظهر صورك بأعلى درجات السطوع والتدرج اللوني.
4. انعدام الخوادم وحماية مدعومة بسياسة CSP
تُنفذ المعالجة بالكامل محلياً عبر معالج جهازك وبواسطة Web Workers. ولا توجد أي طلبات شبكية ترسل بيانات الصور، وهو ما تفرضه ترويسات Content Security Policy (CSP) بصرامة.