แปลง PNG เป็น BMP
การแปลงไฟล์ Portable Network Graphics เป็น Windows Bitmap จะเปลี่ยนข้อมูลราสเตอร์ที่บีบอัดให้เป็นตารางพิกเซลที่ไม่มีการบีบอัด สำหรับระบบปฏิบัติการและฮาร์ดแวร์รุ่นเก่า
การเปรียบเทียบรูปแบบและข้อกำหนดทางเทคนิค
| ข้อกำหนด | PNG | BMP |
|---|---|---|
| ประเภท MIME | image/ | image/ |
| ประเภท | แรสเตอร์ | แรสเตอร์ |
| การบีบอัด | ไม่สูญเสียคุณภาพ (DEFLATE / LZ77 + Huffman) | ไม่บีบอัด / RLE |
| ข้อกำหนดมาตรฐาน | ข้อกำหนด W3C PNG ฉบับที่ 3 | ส่วนหัวบิตแมปของ Microsoft Windows |
| ส่วนหัวที่ระบุลายเซ็นไฟล์ | 89 50 4E 47 0D 0A 1A 0A | 42 4D (BM) |
ภาพรวมรูปแบบและการใช้งาน
การแปลงไฟล์ Portable Network Graphics เป็นไฟล์ Windows Bitmap มักเป็นสิ่งที่จำเป็นเมื่อทำงานกับซอฟต์แวร์รุ่นเก่า ระบบฝังตัว หรือ API ของ Windows รุ่นเก่า แม้ว่า PNG จะยังคงเป็นมาตรฐานสำหรับกราฟิกบนเว็บเนื่องจากมีขนาดไฟล์ที่เล็ก แต่โปรแกรมแก้ไขภาพรุ่นเก่า เอนจิ้นเกม และคอนโทรลเลอร์ฮาร์ดแวร์อุตสาหกรรมบางตัวไม่สามารถอ่านรูปแบบที่บีบอัดได้ โดยพวกมันต้องการเค้าโครงพิกเซลที่ตรงไปตรงมาของบิตแมป นักพัฒนาซอฟต์แวร์และวิศวกรฮาร์ดแวร์มักใช้การแปลงนี้เพื่อส่งข้อมูลพิกเซลดิบไปยังบัฟเฟอร์เฟรมหรือหน่วยความจำเท็กซ์เจอร์โดยตรง โดยไม่ต้องเสียรอบการประมวลผลไปกับการคลายการบีบอัด เนื่องจากบิตแมปจัดเก็บค่าสีในกริดที่คาดเดาได้ รูทีนการโหลดจึงต้องใช้ความซับซ้อนของโค้ดน้อยที่สุด ซึ่งช่วยให้โปรเซสเซอร์แบบฝังตัวทำงานได้เร็วขึ้น
ข้อกำหนดทางเทคนิคและรายละเอียดตัวแปลงสัญญาณ
รูปแบบต้นทางใช้ MIME type image/png และเริ่มต้นด้วยไบต์ลายเซ็น 89 50 4E 47 0D 0A 1A 0A โดยอาศัยอัลกอริทึม DEFLATE ซึ่งผสานการจับคู่พจนานุกรม LZ77 กับการเข้ารหัส Huffman เพื่อบีบอัดโดยไม่สูญเสียข้อมูล รูปแบบปลายทางใช้ MIME type image/bmp และเริ่มต้นด้วยไบต์ลายเซ็น 42 4D คอนเทนเนอร์ Windows Bitmap ไม่มีการบีบอัด หรือใช้การเข้ารหัสความยาวรันแบบง่าย โดยจัดเก็บข้อมูลพิกเซลทีละแถว ซึ่งโดยทั่วไปเรียงจากล่างขึ้นบน พร้อมส่วนหัวคงที่ที่ระบุขนาดภาพ ความลึกสี และบิตมาสก์
ความเข้ากันได้ของระบบปฏิบัติการและเบราว์เซอร์
ไฟล์ Windows Bitmap รองรับโดยตรงในระบบปฏิบัติการ Microsoft Windows ทุกเวอร์ชัน สภาพแวดล้อม MS-DOS และไลบรารีกราฟิกพื้นฐาน เว็บเบราว์เซอร์สมัยใหม่เรนเดอร์ไฟล์บิตแมปได้ แต่เว็บดีเวลลอปเปอร์แทบไม่นิยมใช้เพราะใช้แบนด์วิดท์ไม่คุ้ม ระบบปฏิบัติการมือถืออย่าง iOS และ Android รองรับรูปแบบนี้ในตัวแสดงภาพของระบบ แต่แอปของบุคคลที่สามมักต้องแปลงกลับเป็น PNG หรือ JPEG ด้วยตนเองเพื่อจัดการหน่วยความจำให้เหมาะสม
เคล็ดลับการใช้งาน
ควรตรวจสอบความลึกของสีของภาพต้นฉบับก่อนแปลงทุกครั้ง Windows Bitmaps สามารถสร้างขนาดไฟล์ที่ใหญ่โตได้หากบันทึกในโหมดสี 24-bit หรือ 32-bit โดยไม่มีการบีบอัด ดังนั้นให้ใช้บิตแมปแบบพาเลตต์ 8-bit เมื่อต้องการความเข้ากันได้สูงสุดและขนาดไฟล์ที่เล็กลง
คำถามที่พบบ่อย
จะแปลง PNG เป็น Windows Bitmap โดยไม่สูญเสียคุณภาพได้อย่างไร
ทั้งสองรูปแบบใช้การจัดเก็บข้อมูลสีแบบไม่สูญเสียข้อมูล เนื่องจาก PNG ใช้การบีบอัดแบบ DEFLATE และโดยทั่วไป BMP จะจัดเก็บค่าพิกเซลดิบที่ไม่มีการบีบอัด การแปลงระหว่างกันจึงไม่ทำให้ข้อมูลพิกเซลสูญหาย คุณภาพการมองเห็นยังคงเหมือนเดิมทุกประการ แม้ว่าขนาดไฟล์จะเพิ่มขึ้นอย่างมากก็ตาม
ความแตกต่างระหว่าง PNG และ Windows Bitmap คืออะไร
PNG คือรูปแบบราสเตอร์สมัยใหม่ที่มีการบีบอัด ซึ่งใช้ส่วนย่อยเพื่อจัดเก็บข้อมูลภาพ เมทาเดตา และช่องความโปร่งใสอย่างมีประสิทธิภาพ ในขณะที่ Windows Bitmap คือโครงสร้างคอนเทนเนอร์รุ่นเก่าที่จัดเก็บอาร์เรย์พิกเซลดิบแบบเชิงเส้นโดยมีค่าใช้จ่ายเพิ่มเติม (overhead) น้อยมาก ส่งผลให้มีขนาดไฟล์ที่ใหญ่กว่ามาก