উইন্ডোজ বিটম্যাপ (.bmp)

Microsoft স্ট্যান্ডার্ড

বিটম্যাপ ইমেজ ফাইল (BMP) হলো মাইক্রোসফটের মৌলিক ডিভাইস-ইন্ডিপেন্ডেন্ট রাস্টার গ্রাফিক্স ফরম্যাট, যা সরাসরি হার্ডওয়্যার ফ্রেমবাফার সামঞ্জস্যতার সাথে আনকমপ্রেসড বা RLE-কমপ্রেসড স্ক্যানলাইন সংরক্ষণ করে।

BMP থেকে PNG-তে রূপান্তর করুন

বিনামূল্যের ব্রাউজারভিত্তিক BMP-থেকে-PNG রূপান্তরকারী। আপনার ডিভাইসেই ফাইল তাৎক্ষণিকভাবে রূপান্তর করুন।

ইনস্পেক্ট ও মেটাডেটা

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে BMP ফাইল শনাক্ত করে:

এখানে ফাইল নির্বাচন করুন বা ড্রপ করুন

ব্যক্তিগত - ফাইল কখনোই আপনার ডিভাইস ছেড়ে যায় না

অথবা পেস্ট করুন Ctrl+V
নেটওয়ার্কে কোনো ডেটা পাঠানো হয় না - গোপনীয়তার নিশ্চয়তা: বাহ্যিক সার্ভারে ০ বাইট আপলোড করা হয়েছে। সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজার স্যান্ডবক্সে স্থানীয়ভাবে ঘটেছে।

বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে BMP ফাইল শনাক্ত করে:

হেক্স সিগনেচার (অফসেট 0):

42 4D

ASCII রিপ্রেজেন্টেশন: BM

স্ট্যান্ডার্ডাইজেশন: Microsoft Windows Device-Independent Bitmap (DIB) Architecture

প্রযুক্তিগত বৈশিষ্ট্য

কন্টেইনার আর্কিটেকচারBITMAPFILEHEADER-এর পরে BITMAPINFOHEADER (DIB) এবং raster pixel array থাকে
কম্প্রেশনআনকমপ্রেসড RAW scanline অথবা ঐচ্ছিক BI_RLE8 / BI_RLE4 run-length encoding
বাইট এন্ডিয়াননেসLittle-Endian (Intel x86 বাইট ক্রম)
কালার স্পেসডিভাইস-নির্ভর RGB, sRGB (BITMAPV5HEADER-এ এমবেড করা)
চ্যানেল ও কাঠামো1-bit monochrome, 4-bit / 8-bit paletted, 16-bit, 24-bit RGB অথবা 32-bit RGBA
সর্বোচ্চ মাত্রা2,147,483,647 x 2,147,483,647 পিক্সেল (signed 32-bit integer সীমা)
স্বচ্ছতাআধুনিক BITMAPV3HEADER ও V5HEADER ফরম্যাটে 32-bit BGRA alpha mask সমর্থিত
স্ট্রিমিং ও প্রোগ্রেসিভস্ট্রিমিং করা যায় না; height ঋণাত্মক না হলে scanline উল্টোভাবে (নিচ থেকে ওপরে) সংরক্ষিত হয়

টেকনিক্যাল তুলনা ম্যাট্রিক্স: BMP বনাম প্রতিযোগীগণ

প্রযুক্তিগত বৈশিষ্ট্যBMP (বর্তমান)PNGTIFFJPG
কম্প্রেশন মোডআনকমপ্রেসড / ন্যূনতম RLELossless Deflate compression; ফাইল কতটা ছোট হবে তা ছবির content-এর ওপর নির্ভর করেআনকমপ্রেসড / LZW / Zipলস্সি DCT (~৯০% ছোট)
ডিকোড গতিতাৎক্ষণিক মেমরি কপিDeflate ডিকম্প্রেশন প্রয়োজনLZW/ZIP ডিকম্প্রেশন প্রয়োজনIDCT গণনা প্রয়োজন
স্ক্যানলাইন অর্ডারিংনিচ থেকে উপরে (উল্টানো)উপর থেকে নিচেউপর থেকে নিচে / স্ট্রিপসউপর থেকে নিচে MCU ব্লক
ওয়েব উপযোগিতাখুব খারাপ (ভারী পে-লোড)গ্রাফিক্সের জন্য চমৎকারখারাপ (ডেস্কটপ পাবলিশিং)ফটোগ্রাফির জন্য চমৎকার

সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড

ইমেজ তির্যকভাবে কাটা বা কোণাকুণি বেঁকে রেন্ডার হয়।

মূল কারণ: ভুল রো প্যাডিং গণনা (প্রতিটি স্ক্যানলাইনকে ৪-বাইটের বাউন্ডারিতে প্যাড করতে ব্যর্থ হওয়া)।

পুনরুদ্ধার: সঠিক 32-বিট স্ক্যানলাইন স্ট্রাইড প্রয়োগ করতে File2File.app ইমেজ কনভার্টার ব্যবহার করে পুনরায় এনকোড করুন।

নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর

অবিশ্বস্ত DIB হেডার ডাইমেনশনের উপর ভিত্তি করে বাফার বরাদ্দ করার সময় BMP ডিকোডার প্রায়শই বাফার ওভার-রিডের শিকার হয়।

পরিচিত অ্যাটাক ভেক্টর

  • width * height * bpp গণনায় পূর্ণসংখ্যা ওভারফ্লো (Integer overflow) যার ফলে ছোট হিপ অ্যালোকেশন এবং বাউন্ডের বাইরে রাইট হয়।
  • ক্ষতিগ্রস্ত RLE8/RLE4 রান-লেংথ এস্কেপ সিকোয়েন্স নির্ধারিত বাফারের বাইরে মেমরি রাইট ঘটায়।
  • ম্যানিপুলেটেড হেডার ডাইমেনশন দ্বারা ট্রিগার হওয়া বহু-গিগাবাইট মেমরি বরাদ্দের মাধ্যমে পরিষেবা অস্বীকারের আক্রমণ।

প্রতিরক্ষামূলক সেরা অনুশীলন: গন্তব্য মেমরি বরাদ্দ করার আগে DIB হেডারের প্রস্থ, উচ্চতা এবং বিট-ডেপথের সীমা কঠোরভাবে যাচাই করুন।

ঐতিহাসিক উৎপত্তি ও মাইলফলক

1998Windows 98-এ BITMAPV5HEADER প্রবর্তিত হয়, যা ICC কালার প্রোফাইল ম্যানেজমেন্ট এবং গামা কারেকশন যুক্ত করে।
1990Windows 3.0 অপারেটিং সিস্টেম জুড়ে BITMAPINFOHEADER DIB স্পেসিফিকেশনকে মানসম্মত করে।
1987নেটিভ ডিসপ্লে রাস্টার ফরম্যাট হিসেবে Windows 2.0 এবং OS/2 1.1-এর সাথে এটি পরিচিত হয়।

প্রধান সুবিধাসমূহ ও গুণাবলী

  • শূন্য কম্প্রেশন অবনতি: কোনো কম্প্রেশন আর্টিফ্যাক্ট ছাড়াই শতভাগ বিট-সঠিক পিক্সেল স্টোরেজ।
  • Windows-এ BMP-এর নিজস্ব কোডেক রয়েছে, তবে অন্যান্য অপারেটিং সিস্টেম ও অ্যাপে সমর্থন ভিন্ন হতে পারে।
  • সহজ ডিকোডিং জটিলতা একে এমবেডেড মাইক্রোকন্ট্রোলার এবং গ্রাফিক্স প্রোগ্রামিং শিক্ষার জন্য আদর্শ করে তোলে।

কারিগরি সীমাবদ্ধতা ও অসুবিধা

  • DEFLATE বা Huffman কোডিংয়ের মতো আধুনিক এনট্রপি কম্প্রেশনের অনুপস্থিতির কারণে বিশাল ফাইলের আকার।
  • ওয়েব ট্রান্সমিশন বা মোবাইল নেটওয়ার্ক বিতরণের জন্য অদক্ষ।
  • বটম-আপ স্ক্যানলাইন অর্ডারিংয়ের জন্য আধুনিক টপ-ডাউন গ্রাফিক্স পাইপলাইনে উল্লম্ব সারি ইনভার্সনের প্রয়োজন হয়।

আকর্ষণীয় কারিগরি তথ্য

  • OS/2-এ ব্যবহৃত গাণিতিক কার্টেসিয়ান স্থানাঙ্ক সিস্টেমের কারণে BMP ডিফল্টভাবে উল্টো করে (নিচ থেকে উপরে) ইমেজ স্ক্যানলাইন সংরক্ষণ করে।
  • BMP হেডারে উচ্চতার মান নেতিবাচক সেট করা হলে, ছবিটি সোজাসুজি (উপর থেকে নিচে) ডিকোড করা হয়।
  • BMP ফাইলের প্রতিটি স্ক্যানলাইন ৪ বাইটের গুণিতকে (32-বিট বাউন্ডারি অ্যালাইনমেন্ট) শূন্য দিয়ে প্যাড করা আবশ্যক।

সচরাচর জিজ্ঞাসিত প্রযুক্তিগত প্রশ্নাবলি

BMP ফাইল এত বড় কেন?

BMP ফাইল প্রতিটি পিক্সেলের জন্য কাঁচা, অসংকুচিত রঙের মান সংরক্ষণ করে, যেখানে PNG-এর মতো ফরম্যাটগুলো কোনো গুণমান না হারিয়ে সেই ডেটা সংকুচিত করে।

BMP কি স্বচ্ছতা (transparency) সমর্থন করতে পারে?

হ্যাঁ। ৩২-বিট BMP ফাইলগুলো (BITMAPV3HEADER বা নতুন সংস্করণ ব্যবহার করে) একটি ৮-বিট আলফা চ্যানেল সংরক্ষণ করতে পারে, যদিও পুরোনো সফটওয়্যারগুলোতে এর সমর্থন ভিন্ন হতে পারে।

আমি কীভাবে BMP ফাইলের আকার কমাতে পারি?

BMP ফাইলকে PNG-তে রূপান্তর করলে পিক্সেলের মান অক্ষুণ্ণ রেখে ফাইলের আকার কমতে পারে। তবে কতটা কমবে তা ছবির বিষয়বস্তু ও BMP এনকোডিংয়ের ওপর নির্ভর করে।