একটি বিএমপি (ডিআইবি) চিত্রটি একটি শিরোলেখ দ্বারা তৈরি করা হয় তারপরে 1 টি রঙিন ডেটা সঙ্কুচিত হয় (24 বিপিপি চিত্রের জন্য এটি প্রতি পিক্সেল 3 বাইট হয়, বিপরীত সারি ক্রমে সংরক্ষণ করা হয় এবং 4 বাইট সারি স্ট্রাইড সহ)।
রঙের ডেটাগুলির জন্য বাইটগুলি রঙগুলি উপস্থাপন করতে ব্যবহৃত হয় (উদাহরণস্বরূপ এগুলির কোনওটিই ফাইল ফর্ম্যাট 2 দ্বারা "ম্যান্ডেন্ডেড" হয় না , সেগুলি প্রতিটি পিক্সেলের রঙ থেকে আসে), এবং পিক্সেল রঙ এবং লিখিত বাইটগুলির মধ্যে একটি নিখুঁত 1: 1 চিঠিপত্র রয়েছে ফাইলের মধ্যে; সুতরাং, নিখুঁতভাবে নির্বাচিত রঙগুলি ব্যবহার করে আপনি ফাইলে যা চান তা লিখতে পারেন (শিরোনাম বাদ দিয়ে)।
আপনি উত্পন্ন ফাইলটি নোটপ্যাডে খুললে রঙের ডেটা পাঠ্য হিসাবে প্রদর্শিত হবে; আপনি এখনও শিরোনাম থেকে স্পষ্ট দেখতে পাচ্ছেন (অংশটি BM
পাঠ্যের শুরু থেকে শুরু করে), যা ফাইল ফর্ম্যাট দ্বারা বাধ্যতামূলক।
আমার মতে এই ভিডিওটি এইভাবে করা হয়েছিল: প্রথমে লেখক বিটম্যাপের জন্য প্রয়োজনীয় আকারটি গণনা করেছিলেন এবং একটি সাধারণ প্যাটার্নে প্রসারিত রঙ সহ পূর্ণ আকারের একটি সঠিক ডিআইবি ফাইল তৈরি করেছিলেন (যেমন সমস্ত বাইট 65 => 'A'
); তারপরে ভিডিওটিতে দেখানো হয়েছে এমন প্যাটার্নটি "পে-লোড" কোডের সাথে প্রতিস্থাপন করেছে।
তবে খেয়াল করুন যে নোটপ্যাড দিয়ে পুরো জিনিসটি হস্তশিল্প করা অসম্ভব নয় - রঙ চয়নকারী ডায়ালগ, একটি এএসসিআইআই টেবিল এবং এটি করা যেতে পারে এমন ডিআইবি ফর্ম্যাটটির প্রাথমিক জ্ঞান থাকলেও এটি অনেক ধীর এবং ত্রুটি-প্রবণ হবে।
ডিআইবি ফর্ম্যাট সম্পর্কে আরও তথ্য
- এখানে আরএলই সংক্ষেপিত ডিআইবি রয়েছে, তবে এই ক্ষেত্রে সংকোচিত বিটম্যাপগুলি ব্যবহার করা হয় (এবং এগুলি যাইহোক সত্যিই খুব কম ব্যবহৃত হয়)।
- স্ট্রাইড ব্যতীত, এটি 4 বাইটের একাধিক সারি ব্যবহার করা এড়ানো হয়েছিল।