ما هو ملف JFIF؟
JFIF (تنسيق تبادل ملف JPEG (JFIF)) هو ملف بتنسيق صورة يستخدم الامتداد .jfif. يبني JFIF على JIF (تنسيق تبادل JPEG) عن طريق تقليل التعقيد وحل قيوده.
نبذة تاريخية عن JFIF
قاد إريك هاملتون تطوير وثائق JFIF وتم إنشاء اتفاقية بشأن الإصدار الأول في أواخر عام 1991. تم نشر الإصدار 1.02 في 7 سبتمبر 1992. حدد RFC 2046 أن تنسيق JFIF يُستخدم لنقل صور JPEG عبر الإنترنت. تم نشر JFIF بواسطة ECMA في عام 2009 وتم توحيده من قبل ITU-T في عام 2011 كتوصية T.871 و ISO / IEC في 2013 كـ ISO / IEC 10918-5
تنسيق ملف JFIF
يتكون ملف JFIF من سلسلة من العلامات على النحو المحدد في الجزء 1 من معيار JPEG. تتكون كل علامة من وحدتي بايت (FF متبوعًا ببايت يحدد نوع العلامة). يمكن أن تكون العلامات إما قائمة بذاتها أو تشير إلى بداية مقطع العلامة.
يسمح JFIF لمكونات متعددة مثل Y و Cb و Cr أن يكون لها دقة مختلفة ولكن لم يتم تحديد محاذاة. على عكس JPEG ، يمكن أن يوفر JFIF معلومات الدقة ونسبة العرض إلى الارتفاع. يحدد JFIF أيضًا نموذج اللون الذي سيتم استخدامه.
هيكل الملف
المقطع | الرمز | الوصف |
---|---|---|
SOI | FF D8 | بداية الصورة |
JFIF-APP0 | FF E0 s1 s2 4A 46 49 46 00 … | |
JFXX-APP0 | FF E0 s1 s2 4A 46 58 58 00 … | |
مقاطع علامة إضافية | ||
SOS | FF DA | بدء الفحص |
بيانات الصورة المضغوطة | ||
EOI | FF D9 | نهاية الصورة |
يحدد معيار JFIF القطاعات التالية:
قطاع علامة JFIF APP0
إنه جزء إلزامي يحتوي على معلمات الصورة. يمكن أن تحتوي أيضًا على صورة مصغرة مضمنة غير مضغوطة.
حقل | الحجم (بايت) | الوصف |
---|---|---|
علامة APP0 | 2 | FF E0 |
الطول | 2 | طول المقطع باستثناء علامة APP0 |
المعرف | 5 | JFIF (4A 46 49 46 00) في ASCII تم إنهاؤه بواسطة بايت فارغ |
إصدار JFIF | 2 | إصدار JFIF |
وحدات الكثافة | 1 | وحدة لحقول كثافة البكسل التالية 00: لا توجد وحدات ؛ العرض: ارتفاع نسبة البكسل يساوي Ydensity: Xdensity 01: عدد وحدات البكسل في البوصة 02: بكسل لكل سنتيمتر |
الكثافة | 2 | كثافة البكسل الأفقية أكبر من الصفر |
كثافة Y | 2 | كثافة البكسل العمودية أكبر من الصفر |
Xthumbnail | 1 | عدد البكسل الأفقي لمصغر RGB المدمج. قد تكون صفراً |
Ythumbnail | 1 | عدد البكسل العمودي لمصغر RGB المضمّن. قد تكون صفراً |
بيانات الصورة المصغرة | 3 × ن | بيانات مصغرة نقطية نقطية RGB 24 بت غير مضغوطة |
امتداد JFIF APP0 قطاع علامة
هذا قسم اختياري ، إذا تم تعريفه ، يجب أن يتبع على الفور مقطع علامة JFIF APP0. هذا القسم مدعوم من JFIF الإصدار 1.02 وما بعده ويسمح بتضمين الصور المصغرة في ثلاثة تنسيقات مختلفة.
حقل | الحجم (بايت) | الوصف |
---|---|---|
علامة APP0 | 2 | FF E0 |
الطول | 2 | طول المقطع باستثناء علامة APP0 |
المعرف | 5 | JFXX (4A 46 58 58 00) في ASCII تم إنهاؤه بواسطة بايت فارغ |
تنسيق الصورة المصغرة | 1 | يحدد تنسيق البيانات المستخدم للصورة المصغرة المضمنة التالية: 10: تنسيق JPEG 11: 1 بايت لكل بكسل تنسيق باليت 13: 3 بايت لكل بكسل تنسيق RGB |
بيانات الصورة المصغرة | متغير |
تحويل JFIF إلى تنسيقات ملفات الصور الأخرى
يمكن تحويل JFIF إلى تنسيقات ملفات الصور الشائعة مثل PNG و JPG و PDF.