ما هو ملف GIF؟
تنسيق GIF أو تنسيق التبادل الرسومي هو نوع من الصور المضغوطة بشدة. يستخدم GIF ، المملوك من قبل Unisys ، خوارزمية ضغط LZW التي لا تقلل من جودة الصورة. لكل صورة ، يسمح GIF عادةً بما يصل إلى 8 بت لكل بكسل وما يصل إلى 256 لونًا مسموح به عبر الصورة. على النقيض من صورة JPEG ، والتي يمكنها عرض ما يصل إلى 16 مليون لون وتلامس حدود العين البشرية إلى حد ما. عندما ظهر الإنترنت ، ظلت ملفات GIF هي الخيار الأفضل لأنها تتطلب نطاقًا تردديًا منخفضًا ومتوافقة مع الرسومات التي تستهلك مناطق صلبة من الألوان. تجمع صورة GIF المتحركة العديد من الصور أو الإطارات في ملف واحد وتعرضها في تسلسل لإنشاء مقطع متحرك أو مقطع فيديو قصير. تصل حدود اللون إلى 256 لكل إطار ومن المحتمل أن تكون الأقل ملاءمة لإعادة إنتاج الصور والصور الفوتوغرافية الأخرى ذات التدرج اللوني.
تنسيق ملف GIF
من الناحية المفاهيمية ، تحتوي ملفات GIF على مساحة رسومية ثابتة الحجم مملوءة بصفر أو أكثر من الصور. تقسم بعض ملفات GIF المنطقة الرسومية ذات الحجم الثابت أو الكتل إلى صور فرعية قادرة على العمل كإطارات متحركة في حالة GIF المتحركة. يستخدم تنسيق GIF أعماق البكسل من 1 إلى 8 بت لتخزين بيانات الصورة النقطية. يتم دائمًا استخدام نموذج ألوان RGB وبيانات لوحة الألوان لتخزين الصور. اعتمادًا على الإصدار ، يحدد الرأس ذو الطول الثابت (“GIF87a” أو “GIF89a”) بداية ملف GIF النموذجي.
يتوفر حاليًا نسختان من GIF: 87a و 89a. الأول هو تنسيق GIF الأصلي بينما الأخير هو تنسيق GIF الجديد. في تنسيق الملف هذا ، يتم ذكر خصائص الكتل وأبعاد البكسل في واصف الشاشة المنطقية ذات الطول الثابت. يمكن تحديد وجود وحجم جدول الألوان العالمي بواسطة واصف الشاشة ، والذي يتتبع المزيد من التفاصيل إذا كان موجودًا. المقطع الدعائي هو البايت الأخير من الملف الذي يحتوي على بايت واحد من فاصلة منقوطة ASCII. يكون تخطيط ملف GIF87a النموذجي كما يلي:
العنوان
يحمل الرأس ستة بايت ويستخدم لتحديد نوع الملف كـ GIF. على الرغم من أن واصف الشاشة المنطقي منفصل عن الرأس الفعلي ، إلا أنه في بعض الأحيان يعتبر العنوان الثاني. نفس البنية المستخدمة لتخزين الرأس قد تخزن واصف الشاشة المنطقية. تبدأ جميع ملفات GIF بتوقيع 3 بايت وتستخدم الأحرف “GIF” كمعرف. يبلغ حجم الإصدار أيضًا ثلاثة بايت ويعلن عن إصدار ملف GIF.
واصف الشاشة المنطقية
يحدد “واصف الصورة” ثابت الطول معلومات الشاشة واللون اللازمة لإنشاء صورة GIF. يتضمن حقلا الارتفاع والعرض أصغر قيمة لدقة الشاشة ، وهي إلزامية لإظهار بيانات الصورة. إذا كان جهاز العرض غير قادر على عرض الدقة المحددة ، فستكون هناك حاجة إلى تغيير الحجم لعرض الصورة بشكل مناسب. يتم عرض معلومات خريطة الشاشة واللون بواسطة الحقول الفرعية الأربعة للجدول أدناه (في حين أن البتة 0 هي البت الأقل أهمية):
بت | الحقول الفرعية |
---|---|
0-2 | حجم جدول الألوان العمومي |
3 | علامة فرز جدول الألوان |
4-6 | دقة اللون |
7 | علم جدول الألوان العمومي |
جدول الألوان العالمي
يتم وضع جدول الألوان العام الاختياري مباشرة بعد واصف الشاشة المنطقية. تم تعيين هذا الجدول لفهرسة بيانات لون البكسل داخل بيانات الصورة. في حالة عدم وجود جدول ألوان عام ، تستخدم كل صورة في ملف GIF لونها المحلي. من الأفضل توفير جدول ألوان افتراضي إذا كان كل من جدول الألوان العام والمحلي مفقودًا. تشكل سلسلة من ثلاثيات ثلاثية البايت عناصر جدول الألوان. كل بايت يميز قيمة لون RGB. تُستخدم الألوان الأحمر والأخضر والأزرق كقيم لكل عنصر من عناصر جدول الألوان. تصل الإدخالات في جدول الألوان العالمي إلى 256 إدخالاً كحد أقصى وتمثل دائمًا بقوة اثنين.
بيانات الصورة
تخزن بيانات الصورة بايتًا من الرموز غير المشفرة متبوعة بقائمة فرعية مرتبطة مع البيانات المشفرة بـ LZW.
جَرَّار
يمثل المقطع الدعائي بايتًا واحدًا من البيانات يمثل الحرف الأخير في الملف. قيمة هذا البايت هي 3Bh بشكل دائم وتحدد نهاية دفق البيانات. يجب أن يحتوي كل ملف GIF على المقطع الدعائي في آخر كل ملف.