ไอคอน Windows (.ico)
Microsoft มาตรฐานWindows Icon Resource (ICO) เป็นรูปแบบคอนเทนเนอร์ไอคอนหลายความละเอียดของ Microsoft ซึ่งนิยมใช้กับ favicon ของเว็บไซต์และไอคอน Windows
แปลง ICO เป็น PNG
ตัวแปลงจาก ICO เป็น PNG ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ
ตรวจสอบไฟล์และข้อมูลเมตา
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ ICO โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็นส่วนหัวระดับไบต์
ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ ICO โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:
ลายเซ็น HEX (OFFSET 0):
00 00 01 00การแสดงผลรูปแบบ ASCII: ....
มาตรฐาน: Microsoft Windows Icon Resource Specification
ข้อมูลจำเพาะทางเทคนิค
| สถาปัตยกรรมคอนเทนเนอร์ | ส่วนหัว ICONDIR ขนาด 6 ไบต์มีฟิลด์สำรอง 2 ไบต์ (0) ฟิลด์ชนิด 2 ไบต์ (1 สำหรับไอคอน) และฟิลด์จำนวนภาพ 2 ไบต์ ฟิลด์เหล่านี้ไม่ใช่ลายเซ็นคงที่แยกต่างหาก ตามด้วยระเบียน ICONDIRENTRY ขนาด 16 ไบต์และข้อมูลภาพ DIB หรือ PNG |
| การบีบอัด | DIB ที่ไม่บีบอัด หรือสตรีมที่บีบอัดด้วย PNG (สำหรับไอคอนขนาด 256x256) |
| การจัดลำดับไบต์ | ลำดับไบต์แบบ Little-Endian (Intel x86) |
| พื้นที่สี | RGB ของอุปกรณ์, sRGB |
| ช่องสัญญาณและโครงสร้าง | ขาวดำ 1 บิต, ใช้พาเลต 4 บิต / 8 บิต, RGB 24 บิต หรือ RGBA 32 บิตพร้อมอัลฟา |
| ขนาดสูงสุด | 256 x 256 พิกเซล (รองรับชุดไอคอนหลายความละเอียด: 16x16, 32x32, 48x48, 64x64, 128x128, 256x256) |
| ความโปร่งใส | มาสก์ความโปร่งใสไบนารี XOR/AND หรือแชนเนลอัลฟาเนียนเต็มรูปแบบ 8 บิต |
| การสตรีมและแบบโปรเกรสซีฟ | คอนเทนเนอร์ไดเรกทอรีไอคอนที่ไม่รองรับการสตรีม |
ตารางเปรียบเทียบทางเทคนิค: ICO กับคู่แข่ง
| คุณลักษณะทางเทคนิค | ICO (ปัจจุบัน) | PNG | SVG | CUR |
|---|---|---|---|---|
| การจัดเก็บแบบหลายความละเอียด | หลายขนาดฝังอยู่ในไฟล์เดียว | ขนาดภาพเดียวเท่านั้น | การปรับขนาดเวกเตอร์ไม่จำกัด | หลายขนาดตัวชี้เมาส์ |
| การรองรับ Favicon | เบราว์เซอร์รองรับอย่างกว้างขวาง แต่รายละเอียดแตกต่างกันตามเวอร์ชัน | รองรับในเบราว์เซอร์สมัยใหม่ | รองรับในเบราว์เซอร์สมัยใหม่ | ไม่มี (ตัวชี้เมาส์เท่านั้น) |
| รหัสประเภททรัพยากร | 0x0001 (Icon) | ไฟล์ภาพมาตรฐาน | W3C XML Vector | 0x0002 (เคอร์เซอร์ที่มีจุด hotspot) |
| ขนาดสูงสุด | 256 x 256 pixels | แทบไม่มีขีดจำกัด | ไม่จำกัด (เวกเตอร์) | 256 x 256 pixels |
รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex
แท็บเว็บเบราว์เซอร์แสดงไอคอนหน้าเอกสารเริ่มต้นสีขาวแทนที่จะเป็นไอคอนเฉพาะของเว็บไซต์
สาเหตุหลัก: ไฟล์ Favicon ขาดรายการความละเอียดมาตรฐาน 16x16 หรือ 32x32 หรือส่วนหัว DIB เสียหาย
การกู้คืน: สร้างไฟล์ ICO ที่มีความละเอียดหลากหลายขึ้นมาใหม่โดยใช้ File2File.app Favicon Generator
การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์
ไฟล์ ICO ประกอบด้วยตารางไดเรกทอรีที่ระบุตำแหน่งข้อมูลออฟเซ็ต ซึ่งจำเป็นต้องได้รับการตรวจสอบความถูกต้องเพื่อป้องกันช่องโหว่บัฟเฟอร์ล้น (buffer overflow)
เวกเตอร์การโจมตีที่ทราบ
- เกิดภาวะ Integer overflow ในการนับไดเรกทอรีภาพ ทำให้เกิดการจัดสรรหน่วยความจำขนาดเล็กและเกิดฮีปบัฟเฟอร์ล้น
- ตัวชี้ตำแหน่งออฟเซ็ตไบต์ของภาพที่เสียหาย ทำให้การอ่านข้อมูลออกนอกขอบเขตหน่วยความจำของไฟล์ที่แมปไว้
- การระเบิดของการบีบอัด PNG ที่ฝังอยู่ภายในรายการไอคอนขนาด 256x256
แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน: ตรวจสอบให้แน่ใจว่าออฟเซ็ตรายการไดเรกทอรีทั้งหมดตกอยู่ในขอบเขตทางกายภาพของไฟล์ ICO อย่างเคร่งครัด
ประวัติความเป็นมาและเหตุการณ์สำคัญ
ข้อได้เปรียบและจุดเด่นสำคัญ
- บรรจุความละเอียดของภาพหลายระดับ (เช่น 16x16, 32x32, 48x48, 256x256) ไว้ในไฟล์เดียวเพื่อให้แสดงผลได้อย่างคมชัดในทุกสเกลความหนาแน่นของพิกเซล (DPI)
- เบราว์เซอร์และแอปเดสก์ท็อปหลายรายการรองรับ โดยการทำงานแตกต่างกันตามแพลตฟอร์มและเวอร์ชัน
- รองรับการบีบอัดแบบ PNG ความละเอียดสูง 256x256 สมัยใหม่ภายในคอนเทนเนอร์แบบคลาสสิก
ข้อจำกัดทางเทคนิคและข้อควรพิจารณา
- เว็บเบราว์เซอร์สมัยนิยมหันไปชอบ favicon แบบ SVG และ PNG มาตรฐานมากกว่าคอนเทนเนอร์ ICO ที่รองรับหลายทรัพยากร
- หน้ากากความโปร่งใสแบบ XOR 1-bit ดั้งเดิมในซอฟต์แวร์รุ่นเก่าทำให้ขอบภาพมีความหยักและเป็นพิกเซล
- มีข้อจำกัดด้านความละเอียดคงที่ (สูงสุด 256x256 พิกเซลต่อหนึ่งเฟรมไอคอน)
เกร็ดความรู้ทางเทคนิคที่น่าสนใจ
- ใน Windows ยุคแรก ไอคอนถูกจำกัดขนาดไว้ที่ 32x32 พิกเซล ด้วยจำนวนสีเพียง 16 สีเท่านั้น
- เมื่อ Internet Explorer 5 เปิดตัวฟีเจอร์ favicon เว็บไซต์ต่างๆ สามารถรู้ได้ว่ามีผู้คนบุ๊กมาร์กหน้าเว็บของตนไปเท่าไรจากการนับคำขอไฟล์ '/favicon.ico' ในบันทึกของเซิร์ฟเวอร์
- รายการไอคอนขนาด 256x256 ภายในไฟล์ ICO จะบรรจุไฟล์ PNG ที่สมบูรณ์และถูกต้อง ซึ่งเริ่มต้นด้วยลายเซ็น PNG ขนาด 8 ไบต์
คำถามทางเทคนิคที่พบบ่อย
เหตุใดเว็บไซต์จึงต้องมี favicon
แม้ HTML จะระบุ favicon เป็น PNG แต่เว็บเบราว์เซอร์และโปรแกรมรวบรวมข้อมูลของเครื่องมือค้นหาก็ยังร้องขอไฟล์ /favicon.ico ตามค่าเริ่มต้นเพื่อแสดงไอคอนแท็บและที่คั่นหน้า
ควรใส่ความละเอียดใดบ้างในไฟล์ ICO
ไฟล์ ICO ระดับมืออาชีพควรมีภาพขนาด 16x16, 32x32, 48x48 และ 256x256 พิกเซล เพื่อให้คมชัดบนจอภาพและแถบงานทุกขนาด
แปลง PNG เป็นไฟล์ ICO ได้อย่างไร
อัปโหลดภาพ PNG ไปที่ File2File.app เพื่อสร้างไฟล์ ICO ที่มีภาพหลายความละเอียดได้ทันทีในเบราว์เซอร์
คู่การแปลงไฟล์ ICO ที่เกี่ยวข้อง
การแปลงคอนเทนเนอร์ Windows Icon เป็นภาพ PNG มาตรฐานจะดึงเลเยอร์กราฟิกที่มีความละเอียดสูงสุดออกมา เพื่อให้ใช้กับเว็บและเอกสารที่รองรับ PNG ได้อย่างแพร่หลาย
การแปลงกราฟิกแรสเตอร์ PNG เป็นไฟล์ไอคอน Windows จะบรรจุภาพโปร่งใสของคุณไว้ในคอนเทนเนอร์ ICO ที่ใช้กับทางลัดซอฟต์แวร์บนเดสก์ท็อป
นำภาพ ICO มาใส่ใน PDF หนึ่งหน้าเพื่อส่งต่อไอคอน ระบบจะแสดงไอคอนที่ถอดรหัสได้หนึ่งรายการ โดยเส้นทางนี้ไม่มีตัวควบคุมสำหรับเลือกระหว่างขนาดต่าง ๆ ในชุด