ICO (formato de archivo)

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 5 de octubre de 2017; las comprobaciones requieren 5 ediciones .
ICO, icono de Windows
Extensión .ico
tipo MIME imagen/vnd.microsoft.icon [1]
Desarrollador microsoft
Tipo de formato gráficos de trama

ICO ( icono de Windows ) es un formato de almacenamiento para archivos de iconos en Microsoft Windows .

El formato ICO es similar al formato CUR (cursores de Windows) para almacenar cursores. La diferencia radica en el valor numérico de un campo en la estructura de encabezado y la interpretación de los valores de los otros dos campos de la misma estructura.

Un archivo ICO contiene uno o más íconos de diferentes tamaños y resoluciones. Los íconos pueden ser de cualquier tamaño, pero los íconos cuadrados más utilizados son de 16 px, 32 px y 48 px. También se utilizan iconos con tamaños de 24, 40, 60, 72, 92, 108, 128 píxeles.

A partir de Windows 98/2000, el formato admite la incrustación de imágenes JPEG y PNG , pero los datos de iconos normalmente se almacenan sin comprimir.

Los íconos vienen en color natural ( Color verdadero , profundidad de color de 24 bits ), Color de alta densidad ( profundidad de color de 16 bits) o paleta fija (256, 16 o solo 2 colores). En este caso, el número correspondiente a cada píxel no indica el color, sino el número del color en la paleta.

En cuanto a su estructura, las imágenes en el archivo ICO son las más cercanas a BMP , pero difieren fundamentalmente de ellas en la presencia de una imagen adicional: una máscara superpuesta en el fondo usando la operación AND bit a bit , que permite la transparencia (total) de la imagen. El XOR posterior de la imagen principal puede incluso producir píxeles "invertidos" en lugares donde el fondo no se ha enmascarado.

Además, a partir de Windows XP , se admiten iconos de 32 bits  : cada píxel corresponde a un color de 24 bits y un canal alfa de 8 bits, lo que permite 256 niveles de transparencia parcial . Usando el canal alfa, puede mostrar íconos con bordes suaves (difuminados) y una sombra que se mezcla con cualquier fondo; la máscara se ignora en este caso.

Formato de archivo

El archivo consta de un encabezado de longitud fija, un directorio de información de la imagen y las propias imágenes.

Título

El encabezado tiene un tamaño de 6 bytes:

Campo Desplazamiento
(en bytes)
Tamaño
(en bytes)
Descripción
reservado 0 2 Reservado. siempre 0_
type 2 2 Tipo de archivo:
  • 1para iconos ( .ICO )
  • 2para cursores ( .CUR )

Otros valores no son válidos.

count cuatro 2 El número de imágenes en el archivo, al menos 1.

Catálogo de información de imágenes

Representa registros consecutivos de un tamaño fijo (16 bytes) seguidos uno tras otro. El número de entradas está determinado por el countcampo de encabezado.

Campo Parcialidad Tamaño
(en bytes)
Descripción
ancho 0 una Especifica el ancho de la imagen en píxeles. Puede tomar valores desde 0hasta 255. Si se especifica 0, la imagen tiene 256 píxeles de ancho.
altura una una Especifica la altura de la imagen en píxeles. Puede tomar valores desde 0hasta 255. Si se especifica 0, la imagen tiene una altura de 256 píxeles.
colores 2 una Especifica el número de colores en la paleta de la imagen. Debe ser 0 para iconos a todo color .
reservado 3 una Reservado. Debe ser 0. La documentación técnica de Microsoft establece que este valor siempre debe ser 0; sin embargo, los íconos generados por herramientas nativas de .NET (System.Drawing.Icon.Save) tienen un valor de 255 en este campo.
aviones cuatro 2
  • En .ICO , define el número de aviones. Puede ser 0 o 1.
  • En .CUR , define la coordenada horizontal del "punto caliente" en píxeles, relativa al borde izquierdo de la imagen.
bpp 6 2
  • En .ICO , define el número de bits por píxel (bits-per-pixel). Este valor puede ser 0, ya que se obtiene fácilmente a partir de otros datos; por ejemplo, si la imagen no se almacena en formato PNG , la cantidad de bits por píxel se calcula en función de la información sobre el tamaño de la trama, así como su ancho y alto. Si la imagen se almacena en formato PNG, la información correspondiente se almacena en el propio PNG. Sin embargo, no se recomienda establecer este campo en 0, ya que la lógica para elegir la mejor imagen se desconoce en diferentes versiones de Windows.
  • En .CUR , define la coordenada vertical del "punto caliente" en píxeles, en relación con el borde superior de la imagen.
Talla ocho cuatro Especifica el tamaño del ráster en bytes
compensar 12 cuatro Especifica el desplazamiento de mapa de bits absoluto en el archivo.

Véase también

Notas

  1. http://www.iana.org/assignments/media-types/image/vnd.microsoft.icon

Enlaces