কনটেন্টে যান

JFIF আসলে একটি JPEG: .jfif এক্সটেনশন যা বদলায়

এখানে অদ্ভুত বলতে কেবল সেই এক্সটেনশনটিই। একটি .jfif ফাইলে সাধারণ JPEG-ই থাকে, আর JPEG পড়তে পারে এমন প্রতিটি প্রোগ্রাম এটি পড়ে — PNG-তে কনভার্ট করলে ছবি ধারালো হয় না, কারণ ধারালো করার মতো আর কিছুই বাকি নেই।

JFIF মানে JPEG File Interchange Format, আর এটি নব্বইয়ের দশকের গোড়ার একটি স্পেসিফিকেশন যা বলে দেয় একটি JPEG ডেটাস্ট্রিম কীভাবে মুড়তে হয়, যাতে ভিন্ন প্রোগ্রামও পিক্সেলের অর্থ নিয়ে একমত হয়। মোড়কটি হলো ফাইলের সামনে ছোট একটি মার্কার ব্লক — APP0 মার্কার — যেখানে পিক্সেল অ্যাসপেক্ট রেশিও আর কখনো একটি থাম্বনেইল লেখা থাকে। তার পরের সবকিছু সাধারণ JPEG।

এক্সটেনশনটি কোথা থেকে আসে

.jfif এক্সটেনশনটি Windows-যুগের অভ্যাস। কিছু ক্যামেরা, কিছু ফোন আর কিছু Windows প্রোগ্রাম JPEG এটিসহ সেভ করে, আর সেগুলোর কয়েকটি একই ফাইলের নাম .jpg করে দিলে থাম্বনেইল দেখায় না। বাইট বদলায় না; কেবল নামটাই বদলায়। এজন্যই একটি .jfif ফাইল ট্যাবে ড্র্যাগ করলে ব্রাউজার ঠিকঠাক খোলে, আর এজন্যই এক্সটেনশনের ওপর ভরসা করা অপারেটিং সিস্টেমগুলো ধাঁধায় পড়ে।

মার্কার ব্লকে আসলে কী থাকে

মার্কারযা থাকে
APP0 (JFIF)ভার্সন, ঘনত্বের একক (dpi বা dots per cm), আর পিক্সেল অ্যাসপেক্ট রেশিও।
APP0 (অন্য)নির্মাতা-নির্দিষ্ট ব্লক — কিছু ক্যামেরা এখানে নিজেদের তথ্য লেখে।
APP1 (Exif)ক্যামেরার মেটাডেটা: এক্সপোজার, তারিখ, অভিমুখ, কখনো GPS।
এর পরের সবকিছুJPEG ডেটাস্ট্রিম: কোয়ান্টাইজেশন টেবিল, হাফম্যান টেবিল, আর কম্প্রেস করা ছবি।

ফাইলটি কনভার্ট করতে এই টুলের ওই ব্লক পড়ার দরকার নেই। .jfif একই accept তালিকায় বসে যেখানে .jpg ও .jpeg, তাই কনভার্টার চারটি এক্সটেনশনকেই এক ফরম্যাট ধরে। মার্কারটি কেবল মেটাডেটা ভিউয়ারেই দেখা হয়, যা তা পড়ে JFIF 1.02, 72 dpi-এর মতো কিছু জানায় — আর অন্য মেটাডেটা মোছার সময় মার্কারটি রেখে দেয়, কারণ JFIF ব্লকটি বলে দেয় পিক্সেল কীভাবে ব্যাখ্যা করতে হবে।

PNG-তে কনভার্ট করা কী করতে পারে আর পারে না

JPEG লসি: সেভ করার সময় কিছু খুঁটিনাটি ফেলে দেওয়া হয়েছিল, আর তা আর কোথাও রাখা নেই। ফাইলটি ডিকোড করলে ঠিক সেই পিক্সেলগুলোই ফিরে আসে যেগুলো টিকে গেছে। সেই পিক্সেলগুলো PNG-তে লিখলে সেগুলো আরও ক্ষতি ছাড়াই রাখা হয় — তাই PNG দেখতে JPEG-এর মতোই, আর প্রায়ই কয়েক গুণ বড়, কারণ PNG সাইজের জন্য কোনো কিছু ভোঁতা করতে রাজি নয়।

শেষ কথাটিই কনভার্ট করার আসল কারণ। আপনি যদি একটি JPEG সম্পাদনা করতে যান, PNG নিয়ে কাজ করুন; কেবল সংরক্ষণ করাই দরকার হলে JPEG এমনিতেই ছোট।

সীমাগুলো

সংক্ষেপে

প্রশ্ন

JFIF-কে PNG-তে কনভার্ট করলে ছবি কি ধারালো হবে?

না। ধার ঠিক হয়েছিল JPEG লেখার সময়ই, আর ডিকোডিং ফেলে দেওয়া খুঁটিনাটি বানিয়ে আনতে পারে না। PNG ডিকোড করা ফলাফল বিশ্বস্তভাবে রাখে — প্রথম দফা কম্প্রেশন ফিরিয়ে দেয় না।

একটি .jfif ফাইল কি কেবল নাম বদলানো .jpg?

প্রায় তা-ই। এটি সামনে JFIF হেডার ব্লক থাকা একটি JPEG ডেটাস্ট্রিম, আর একটি এক্সটেনশন যা কিছু সফটওয়্যার পছন্দ করে। ব্রাউজার ও এডিটর এটি JPEG হিসেবেই পড়ে; কেবল এক্সটেনশনটিই অস্বাভাবিক।

PNG কেন JFIF-এর চেয়ে এত বড়?

কারণ JPEG লসিসহ কম্প্রেস করে আর PNG করে না। PNG একই পিক্সেল আরও কম্প্রেশন ছাড়াই রাখে, তাই PNG হিসেবে সেভ করা একটি ফটো প্রায়ই কয়েক গুণ বড় হয়।

এই নিবন্ধের টুল

সব নিবন্ধ