מהו קובץ JFIF?
JFIF (פורמט JPEG File Interchange (JFIF)) הוא קובץ בפורמט תמונה המשתמש בסיומת jfif. JFIF בונה על JIF (פורמט JPEG Interchange) על ידי הפחתת המורכבות ופתרון המגבלות שלו.
היסטוריה קצרה של 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 מסתיים על ידי byte null |
JFIF version | 2 | גרסת ה-JFIF |
יחידות צפיפות | 1 | יחידה לשדות צפיפות הפיקסלים הבאים 00 : אין יחידות; יחס רוחב: גובה פיקסל שווה ל-Ydensity:Xdensity 01 : פיקסלים לאינץ’ 02 : פיקסלים לסנטימטר |
Xdensity | 2 | צפיפות פיקסלים אופקית גדולה מאפס |
Ydensity | 2 | צפיפות פיקסלים אנכית גדולה מאפס |
Xthumbnail | 1 | ספירת פיקסלים אופקית של התמונה הממוזערת RGB המוטבעת. יכול להיות אפס |
Ythumbnail | 1 | ספירת פיקסלים אנכית של התמונה הממוזערת של RGB מוטבעת. יכול להיות אפס |
נתוני תמונות ממוזערות | 3 × n | נתונים ממוזערים של רסטר RGB של 24 סיביות לא דחוסים |
JFIF סיומת APP0 קטע סמן
זהו קטע אופציונלי שאם מוגדר, חייב לעקוב מיד אחר קטע סמן JFIF APP0. סעיף זה נתמך על ידי JFIF גרסה 1.02 ומעלה ומאפשר הטמעה של תמונות ממוזערות בשלושה פורמטים שונים.
שדה | גודל (בתים) | תיאור |
---|---|---|
סמן APP0 | 2 | FF E0 |
אורך | 2 | אורך הקטע לא כולל סמן APP0 |
מזהה | 5 | JFXX (4A 46 58 58 00) ב-ASCII מסתיים על ידי byte null |
פורמט תמונה ממוזערת | 1 | מציין באיזה פורמט נתונים נעשה שימוש עבור התמונה הממוזערת המוטבעת הבאה: 10: פורמט JPEG 11: 1 בייט לפיקסל בפורמט פלט 13 : פורמט RGB של 3 בתים לפיקסל |
נתוני תמונות ממוזערות | משתנה |
המרה של JFIF לפורמטים אחרים של קבצי תמונה
ניתן להמיר JFIF לפורמטים פופולריים של קבצי תמונה כגון PNG, JPG ו-PDF.