فایل ICO چیست؟
فایلهای با پسوند ICO انواع فایلهای تصویری هستند که به عنوان نماد برای نمایش یک برنامه کاربردی در Microsoft Windows استفاده میشوند. اینها در اندازه، پشتیبانی از رنگ و وضوح متفاوت برای مطابقت با نیازهای صفحه نمایش هستند. یکی دیگر از فرمت های مشابه فایل تصویری در مایکروسافت ویندوز، CUR برای نمایش مکان نما است و یک نقطه اتصال را در هدر تصویر تعریف می کند. در MacOS، فرمت های فایل ICNS همان هدفی را انجام می دهند که فایل های ICO هستند. چندین وبسایت آنلاین و همچنین برنامههای کاربردی، ویژگی ایجاد چنین فایلهایی را فراهم میکنند و فرمتهای تصویری دیگر مانند BMP، PNG و غیره را به فرمت فایل آیکون تبدیل میکنند. نوع رسانه اینترنتی ثبت شده رسمی IANA برای فایل های ICO، image/vnd.microsoft.icon است.
تاریخچه مختصر
Icons were introduced with the launch of Microsoft Windows 1.0. اندازه اینها 32x32 و تک رنگ بودند. با ورود win32، پشتیبانی از تصاویر آیکون با رنگ واقعی تا 256x256 پیکسل در ابعاد معرفی شد. ویندوز XP برای اولین بار از تصاویر نمادهای رنگی 32 بیتی پشتیبانی کرد و به آن اجازه داد قسمت های نیمه شفاف مانند سایه ها، جلوه های ضد آلیاسینگ و شیشه مانند به نماد اضافه شوند. مایکروسافت فقط اندازه نمادها را تا 48×48 پیکسل برای ویندوز XP توصیه می کند. Windows Vista یک نمای نماد 256×256 پیکسلی به Windows Explorer اضافه کرد و همچنین از فرمت فشرده PNG پشتیبانی کرد. با استفاده از رزولوشن بالاتر و حالتهای DPI بالا، فرمتهای آیکون بزرگتر (مانند ۲۵۶×۲۵۶) توصیه میشود.
فرمت فایل ICO
یک فایل ICO متشکل از یک یا چند تصویر کوچک با اندازههای مختلف و عمق رنگ است. وجود تصاویر در اندازه های مختلف برای مقیاس بندی مناسب در وضوح های مختلف صفحه است. همه مقادیر در فایلهای ICO/CUR به ترتیب little-endian بایت نمایش داده میشوند.
فایل ICO از یک هدر آیکون، یک فهرست آیکون تشکیل شده است.
فیلد | توضیحات |
---|---|
Icon Header | اطلاعات کلی در مورد فایل ICO را ذخیره می کند. |
Directory[1..n] | اطلاعات کلی درباره هر تصویر موجود در فایل را ذخیره می کند. |
نماد #1 | «داده» واقعی برای اولین تصویر در قالب قدیمی AND/XOR DIB یا PNG جدیدتر |
… | |
نماد #n | دادههای آخرین تصویر نماد |
سرتیتر
Offset | اندازه (به بایت) | هدف |
---|---|---|
0 | 2 | رزرو شده. همیشه باید 0 باشد. |
2 | 2 | نوع تصویر را مشخص می کند: 1 برای تصویر نماد (.ICO)، 2 برای تصویر مکان نما (CUR). مقادیر دیگر نامعتبر هستند. |
4 | 2 | تعداد تصاویر موجود در فایل را مشخص می کند. |
فهرست راهنما
دایرکتوری موجود در یک فایل ICO، که به عنوان ساختار ICONDIR نشان داده شده است، حاوی ساختار ICONDIRECTORY برای هر تصویر در فایل است. به همین ترتیب یک بلوک پیوسته از تمام داده های بیت مپ تصویر دنبال می شود. این مطابق شکل زیر است.
Offset | اندازه | توضیحات |
---|---|---|
0 (0) | 1 | عرض، اگر 256 پیکسل باشد باید 0 باشد |
1 (1) | 1 | ارتفاع، اگر 256 پیکسل باشد باید 0 باشد |
2 (2) | 1 | تعداد رنگ، اگر بیش از 256 رنگ باشد باید 0 باشد |
3 (3) | 1 | رزرو شده، باید 0 باشد |
4 (4) | 2 | صفحه های رنگی در فرمت ICO باید 0 یا 1 باشند یا نقطه اتصال X در قالب CUR. |
6 (6) | 2 | بیت در هر پیکسل در قالب ICO. یا نقطه اتصال Y در قالب CUR. |
8 (8) | 4 | اندازه داده های بیت مپ بر حسب بایت. |
12 (C) | 4 | Offset در فایل. |