Wikiwand AI

ICO (formato de archivo)

formato de archivo de iconos de Windows From Wikipedia, the free encyclopedia

ICO es un formato de archivo gráfico utilizado principalmente para almacenar iconos en Microsoft Windows. Un archivo ICO funciona como un contenedor que puede incluir varias imágenes del mismo icono en distintos tamaños y profundidades de color, de modo que el sistema o una aplicación pueda escoger la representación más adecuada para cada contexto de visualización.[1] Microsoft identifica el formato como Icon Format (ICO) y lo asocia con la extensión de archivo .ico en Windows Imaging Component (WIC).[2]

Tipo de MIME image/vnd.microsoft.icon, image/x-icon, image/ico
Uniform Type Identifier com.microsoft.ico
Datos rápidos Desarrollador, Información general ...
ICO
Desarrollador
Microsoft
Información general
Extensión de archivo .ico
Tipo de MIME image/vnd.microsoft.icon, image/x-icon, image/ico
Uniform Type Identifier com.microsoft.ico
Número mágico 00000100
Tipo de formato Formato de archivo gráfico
Formato abierto ?
Cerrar

El formato relacionado CUR se emplea para cursores estáticos de Windows. Su estructura es semejante a la de ICO, aunque el archivo o recurso debe identificar que se trata de un cursor e incorporar información sobre el punto activo, es decir, la coordenada desde la cual el cursor interactúa con la interfaz.[3] Los cursores animados de Windows se almacenan habitualmente en archivos ANI, no en CUR.[3]

Historia

Las primeras variantes del formato estaban orientadas a imágenes pequeñas y monocromas. En la estructura clásica, un archivo ICO comienza con una cabecera fija denominada ICONDIR, seguida por una tabla de entradas de directorio y por los datos de imagen propiamente dichos.[1] A partir de Windows 95 y Windows NT 4, los campos de anchura y altura del directorio admitieron el valor 0 para representar una dimensión de 256 píxeles, lo que permitió incluir imágenes de iconos de mayor tamaño dentro del mismo contenedor.[1]

La representación de iconos en color mantuvo la misma organización general del formato, pero sustituyó la imagen monocroma por un mapa de bits en color acompañado por una máscara. Raymond Chen describe que, en esta variante, los datos de imagen incluyen una estructura BITMAPINFOHEADER, una tabla de colores cuando corresponde, los píxeles de la imagen y, a continuación, los píxeles de la máscara.[4]

Con Windows Vista se introdujo la posibilidad de almacenar imágenes comprimidas en PNG dentro de archivos ICO. En ese caso, los datos de la imagen no comienzan con una cabecera BITMAPINFOHEADER, sino directamente con la firma de un archivo PNG; además, la imagen debe estar en formato ARGB de 32 bits.[5] Las guías de diseño de Microsoft para Windows Vista recomiendan iconos de hasta 256 × 256 píxeles para pantallas de alta densidad, y señalan que solo la imagen de 256 × 256 píxeles debería comprimirse para reducir el tamaño del archivo.[6]

Estructura del archivo

Un archivo ICO se compone de tres partes principales: una cabecera ICONDIR, una o más entradas ICONDIRENTRY y los bloques de datos de imagen a los que apunta cada entrada. La cabecera contiene un campo reservado, un campo de tipo y un contador de imágenes. En ICO, el tipo es 1; en CUR, el tipo correspondiente es 2.[1]

Cada entrada de directorio describe una imagen individual. Entre sus campos figuran la anchura, la altura, el número de colores, los planos de color, los bits por píxel, el tamaño de los datos de imagen y el desplazamiento desde el comienzo del archivo hasta el bloque de datos correspondiente.[1] Esta organización permite que un solo archivo contenga, por ejemplo, versiones de 16 × 16, 32 × 32, 48 × 48 y 256 × 256 píxeles del mismo icono.

Datos BMP

Cuando una imagen de un archivo ICO se almacena en formato BMP, no se incluye la cabecera de archivo BITMAPFILEHEADER propia de los archivos BMP independientes. En cambio, los datos comienzan con una estructura de información de mapa de bits, seguida por la tabla de colores si existe, los píxeles de la imagen y una máscara monocroma.[4]

En los iconos tradicionales, la máscara de color se conoce como máscara XOR y la máscara de transparencia como máscara AND. La altura declarada en la estructura de mapa de bits suele duplicar la altura real de la imagen porque incluye tanto los píxeles visibles como los de la máscara.[4] En las imágenes de 32 bits, el canal alfa permite representar transparencia parcial; por ello, en los iconos modernos la transparencia puede derivarse del canal alfa en lugar de depender exclusivamente de una máscara monocroma.[5]

Datos PNG

Desde Windows Vista, una entrada de imagen de un archivo ICO puede contener un PNG completo. En ese caso, el bloque de datos empieza con la firma estándar de PNG y no con una estructura de mapa de bits de Windows.[5] Este mecanismo se introdujo para reducir el tamaño de los iconos de alta resolución, especialmente los de 256 × 256 píxeles usados en vistas grandes y entornos de alta densidad de píxeles.[6]

Recursos de iconos y cursores en Windows

En archivos ejecutables y bibliotecas de Windows, los iconos y cursores no se almacenan necesariamente como archivos ICO o CUR completos. El sistema los organiza en recursos. Microsoft documenta recursos de grupo como RT_GROUP_ICON y RT_GROUP_CURSOR, que contienen la información necesaria para seleccionar la imagen adecuada, y recursos individuales RT_ICON y RT_CURSOR, que almacenan las imágenes concretas.[3]

Cuando un archivo ICO se convierte en recurso, el directorio del icono se guarda como un recurso de grupo, mientras que cada imagen individual se separa en un recurso RT_ICON. En el directorio de grupo, el campo que en el archivo ICO indicaba un desplazamiento dentro del archivo se sustituye por un identificador de recurso.[7] Los recursos de cursor son similares, pero incorporan información adicional sobre el punto activo antes de los datos de mapa de bits.[3]

Tipo MIME

El tipo MIME registrado por la IANA para archivos ICO es image/vnd.microsoft.icon.[8] La propia ficha de IANA indica que también se han usado denominaciones como image/x-icon, image/ico, image/icon, text/ico y application/ico.[8] Microsoft Learn, por su parte, identifica el códec ICO de WIC con el tipo MIME image/ico.[2]

El uso de ICO en la web se asoció históricamente con el archivo favicon.ico, empleado por navegadores para representar un sitio en marcadores, pestañas o accesos directos.[8]

Compatibilidad

Windows Imaging Component incluye un decodificador nativo para ICO, aunque Microsoft no proporciona un codificador ICO nativo mediante WIC.[2] En aplicaciones de escritorio de Windows, Microsoft recomienda que los iconos principales incluyan varios tamaños, como 16 × 16, 32 × 32, 48 × 48 y 256 × 256 píxeles, para que puedan escalarse correctamente en distintos contextos de la interfaz.[6]

Véase también

Referencias

Enlaces externos

Related Articles

Timelines

Top Qs

Fact Checks