GIF

صيغة GIF — لوحة 256 لونًا والصور المتحركة

تاريخ صيغة GIF التي أنشأتها CompuServe عام 1987 (87a و89a)، ولوحة الألوان ذات 256 لونًا، وضغط LZW غير الفاقد، وطريقة جعل لون واحد شفافًا، ومبدأ الحركة وبنية الملف، ومتى يُفضَّل WebP أو الفيديو بدلًا من GIF.

الامتداد.gif
MIMEimage/gif
المعيارCompuServe GIF87a (1987) · GIF89a (1989)
الضغطLZW غير فاقد (مع حد 256 لونًا)
الشفافيةلون واحد فقط شفاف (تشغيل/إيقاف)
الحركةنعم (تأخير الإطار بوحدات 1/100 ثانية)
عدد الألوانحتى 256 لونًا لكل إطار
الحجم الأقصى65,535 × 65,535 px

GIF (Graphics Interchange Format) صيغة أعلنتها خدمة الإنترنت الأمريكية CompuServe عام 1987، وفي مراجعة عام 1989 GIF89a أضيفت كتل توسيع تُستخدم للون الشفاف والحركة. استُخدمت منذ بدايات الإنترنت وما زالت مرادفًا للصور المتحركة القصيرة، لكنها تقنيًا من أقدم الصيغ.

لوحة 256 لونًا وضغط LZW

لا تحفظ GIF لون كل بكسل مباشرة، بل تحفظ رقم اللون في لوحة ألوان (جدول ألوان) لا تتجاوز 256 لونًا. وفق المواصفة يكون حجم جدول الألوان قوة للعدد 2 بحد أقصى 256 مدخلًا. ثم تُضغط مصفوفة الأرقام هذه ضغطًا غير فاقد بخوارزمية LZW.

الضغط نفسه غير فاقد، لكن اختزال صورة فوتوغرافية فيها أكثر من 16 مليون لون إلى 256 لونًا يسبب فقدًا كبيرًا. تظهر التدرجات الناعمة مثل السماء والبشرة بنقاط منقّطة (dithering) أو أشرطة. في المقابل تُحفظ فنون البكسل والأشكال البسيطة قليلة الألوان صغيرةً وحادة.

كانت خوارزمية LZW في وقت ما محلّ مشكلة براءة اختراع، وكان ذلك أحد أسباب تطوير PNG في التسعينيات. وقد انتهت صلاحية تلك البراءة منذ زمن.

الشفافية

في امتداد التحكم الرسومي (Graphic Control Extension) في GIF89a خانة لتحديد رقم لون شفاف واحد. البكسلات التي تحمل هذا الرقم لا تُرسم على الشاشة وتبقى الخلفية ظاهرة. أي أن الشفافية إما «شفاف تمامًا أو معتم تمامًا»، ولا يمكن تمثيل الظلال شبه الشفافة أو الحواف الناعمة. ولهذا كثيرًا ما تظهر حافة بيضاء (هالة) عند وضع GIF شفاف على خلفية بلون آخر.

الحركة

حركة GIF هي عرض عدة صور بالتتابع، ويُحدَّد زمن التأخير بين الإطارات وفق المواصفة بوحدات 1/100 ثانية. أما عدد مرات التكرار فيُحدَّد بكتلة توسيع انتشرت لاحقًا (NETSCAPE2.0).

بنية الملف

يبدأ ملف GIF بتوقيع من 6 بايت هو GIF87a أو GIF89a، تليه الكتل التالية.

  1. واصف الشاشة المنطقية: عرض اللوحة الكلية وارتفاعها ورقم لون الخلفية
  2. جدول الألوان العام: لوحة الألوان المستخدمة في الملف كله (اختياري)
  3. امتداد التحكم الرسومي: زمن تأخير الإطار التالي، ورقم اللون الشفاف، وطريقة التخلص من الإطار (89a)
  4. واصف الصورة وبيانات الصورة: موضع الإطار وحجمه، وجدول ألوان محلي عند الحاجة، وبيانات مضغوطة بـ LZW
  5. تتكرر الخطوتان 3–4 بعدد الإطارات، وفي النهاية يأتي بايت الإنهاء (3B).

يمكن أن يكون لكل إطار جدول ألوان محلي، فنظريًا يمكن استخدام أكثر من 256 لونًا في الملف ككل، لكن حد 256 لونًا يبقى قائمًا داخل الإطار الواحد.

المزايا والقيود

  • التوافق: تشغّلها جميع المتصفحات وتطبيقات المراسلة وكل البرامج تقريبًا بما في ذلك الحركة.
  • عدم كفاءة الحجم: يُضغط كل إطار على حدة بـ 256 لونًا، فيصبح الملف ضخمًا جدًا إذا احتوى على مقاطع تشبه الفيديو. وتوضح Google أن WebP المتحرك يمكن أن يقدم حجمًا أصغر من GIF وAPNG.
  • قيود الألوان والشفافية: 256 لونًا وشفافية بعمق 1 بت فقط.

الاستخدامات الرئيسية والصيغ البديلة

ما زالت تُستخدم في الحالات التي يكون فيها التشغيل في كل مكان هو الأهم مثل صور التفاعل القصيرة وأيقونات التحميل وفن البكسل. أما الصور المتحركة التي تُنشر على المواقع فإن WebP أو AVIF المتحركين أو مقاطع الفيديو القصيرة (MP4 وWebM) أصغر وأوضح بكثير.

تنبيهات عند التحويل

  • GIF → JPG وPNG: معظم الأدوات تحفظ الإطار الأول فقط كصورة ثابتة.
  • PNG وJPG → GIF: تُختزل الألوان إلى 256 فتتراجع جودة الصور الفوتوغرافية كثيرًا. لا يُنصح بذلك إلا للشعارات والأشكال.
  • لتحويل الصور الثابتة إلى صيغ مختلفة راجع تحويل صيغ الصور.

تاريخ المراجعة: 2026-09-23

المصادر

← العودة إلى دليل الصيغ