# Imágenes

En esta lección se explican:

- los formatos de imágenes de mapa de bits utilizados en la web
- cómo insertar imágenes en una página web
- cómo crear imágenes flotantes

## Formato de imágenes de mapa de bits

Los formatos de imágenes de mapa de bits (no vectoriales) más utilizados en Internet son GIF y JPEG, aunque cada vez está más extendido el formato PNG. El formato MNG no ha tenido éxito como alternativa los GIFs animados y no conviene utilizar el formato BMP de Windows porque los archivos son muy grandes.

### JPEG

El comité JPEG (Joint Photographic Experts Group = Grupo de Unión de Expertos en Fotografía) fue creado en 1982 por las tres organizaciones de normalización ISO (International Organization for Standardization = Organización Internacional de Normalización), CCITT (International Telegraph and Telephone Consultative Committee = Comité Consultivo Internacional de Telegrafía y Telefonía, este comité de la UIT -Unión Internacional de las Telecomunicaciones- desapareció en 1992) e IEC (International Electrotechnical Commission = Comisión Electrotécnica Internacional) con el objetivo de definir un algoritmo de compresión que permitiera la transmisión de imágenes reales a través de líneas RDSI. En 1994 se aprobó finalmente la norma ISO/IEC 10918-1, que definía una familia de algoritmos de compresión. Por problemas entre los organismos de normalización participantes no llegó a definirse un formato de archivo, así que en la práctica se utilizan unos formatos creados bajo la coordinación de C-Cube Microsystems.

- El formato JFIF (JPEG File Interchange Format = Formato de Intercambio de Archivos JPEG) es el más elemental y sólo contiene la imagen. Este formato es el que suelen tener las imágenes con extensión JPG.
- El formato TIFF 6.0 permite almacenar todo tipo de información adicional. Se utiliza menos.

En el año 2000 se aprobó la norma ISO/IEC 15444, una versión más potente del JPG original, conocida como JPEG 2000.

La práctica totalidad de las fotografías (imágenes con muchos colores) que hay en Internet están en formato JPEG, por la extraordinaria compresión que consigue (como se puede ajustar el nivel de compresión, al crear el archivo se puede ajustar la relación tamaño/calidad de la imagen). Además admite también entrelazado (una imagen entrelazada se ve en el navegador desde que empieza a descargarse, primero con poca calidad, pero cada vez con más detalle a medida que va llegando). El único inconveniente es que se trata de un formato de compresión con pérdida, por lo que nunca se puede recuperar la información original, y si una imagen se edita varias veces, la calidad se va degradando cada vez más.

Para conocer más detalles sobre el formato JPEG, se pueden consultar estas dos FAQ: JPEG FAQ 1 y JPEG FAQ 2.

### GIF

La especificación del formato GIF87a (Graphics Interchange Format = Formato de Intercambio de Gráficos) fue publicada por CompuServe en junio de 1987. Una imagen GIF sólo puede tener 256 colores distintos, lo que no la hace recomendable para las fotografías, pero sí para dibujos. Además, el tamaño de los archivos es pequeño, ya que utiliza el algoritmo de compresión sin pérdida LZW. El éxito del formato GIF fue inmediato y su uso se extendió por Internet.

CompuServe publicó en julio de 1990 una extensión del formato GIF87a llamada GIF89a, que añadía al formato GIF la posibilidad de definir transparencia y de crear animaciones (los llamados GIF animados). Los primeros navegadores (como Mosaic en 1993) soportaban GIF, lo que facilitó su uso masivo en la web.

Pero el algoritmo LZW (LZW son las iniciales de sus inventores, Abraham Lempel, Jakob Ziv y Terry Welch) estaba patentado desde 1983 por la Sperry Corporation (que en 1986 se había unido a Burroughs para formar Unisys). Parece ser que CompuServe no comprobó al crear GIF si el algoritmo que iba a utilizar estaba patentado y que Unisys no se enteró hasta 1993 de que se estaba usando LZW sin su permiso. A partir de ese momento, Unisys reclamó que cualquier programa que creara imágenes en formato GIF le pagara una licencia. Muchas empresas, entre ellas CompuServe, llegaron a acuerdos con Unisys, pero inmediatamente se desarrolló el formato PNG, un formato libre para sustituir a GIF.

Las patentes de Unisys que cubren el formato GIF vencieron en junio de 2003 en Estados Unidos y en 2004 en otros países (Canada, Francia, Italia, Alemania, Reino Unido y Japón) y unas patentes de IBM vencieron en julio de 2006, por lo que GIF es ahora un formato libre de patentes. En cualquier caso, se recomienda utilizar PNG en lugar de GIF.

### PNG

El formato PNG (Portable Network Graphics = Gráficos de Red Portátiles) surgió como alternativa a la reclamación de Unisys, poseedora de una patente del algoritmo LZW, usado en el formato GIF. La primera versión preliminar fue propuesta por Thomas Boutell en enero de 1995 y en octubre de 1996 el W3C publicó la recomendación Portable Network Graphics, editada por Thomas Boutell. En noviembre de 2003 se publicó la recomendación Portable Network Graphics (PNG): Functional specification (2º edición), editada por David Duce y publicada también como norma ISO 15948.

Las ventajas del formato PNG sobre el formato GIF son muchas: se trata de un formato libre, sin pérdida, que consigue mayor compresión que GIF (alrededor de un 20%), con transparencia alfa (cada pixel puede tener su propio nivel de transparencia), canal gamma (para ajustar el brillo) y entrelazado.

Sin embargo el formato PNG no ha conseguido desplazar al formato GIF, principalmente porque hasta finales de 2006 Internet Explorer (el navegador más utilizado) no mostraba correctamente las imágenes PNG (concretamente, las imágenes con transparencia alfa). "Casualmente", una vez vencidas las patentes del formato GIF, Microsoft publicó en octubre de 2006 Internet Explorer 7.0, que ya muestra correctamente los archivos PNG.

### MNG

El formato MNG (Multiple-image Network Graphics = Gráficos de Red con Múltiples imágenes) fue creado por algunos de los autores de PNG a partir de 1996. La especificación MNG 1.0, escrita por Glenn Randers-Pehrson, se aprobó en enero de 2001, aunque no ha sido apoyada por el W3C. MNG permite crear animaciones a partir de imágenes PNG.

Por motivos que desconozco, el formato MNG tuvo muy poco éxito. Aunque existen algunos programas capaces de crear y reproducir MNG, su uso no ha dejado nunca de ser marginal. Por ejemplo, en junio de 2003, Mozilla Firefox eliminó el soporte de MNG que tenía hasta ese momento (se intentó restaurar el soporte, sin ningún éxito). Como alternativa a MNG, actualmente (abril de 2007) se está desarrollando el formato APNG (Animated PNG) y que probablemente se podrá utilizar en Firefox 3 (el bug 257197 de Bugzilla trata este asunto).

### BMP

El formato BMP (BitMaP = Mapa de Bits) es el formato de imágenes de mapa de bits que utiliza internamente el subsistema gráfico de Windows (GDI) y que también se suele utilizar para guardar imágenes en Windows. Permite varias profundidades de color (de 1 a 24 bits por pixels) y transparencia. El formato no comprime las imágenes, por lo que las imágenes tiene un tamaño muy grande.

Como se trata de un formato bien documentado y libre de patentes, se puede utilizar en cualquier sistema operativo y los navegadores suelen ser capaces de mostrar imágenes en formato BMP. De todas maneras, conviene no utilizar en páginas web porque las imágenes no están comprimidas y ocupan mucho espacio.

Volver al índice

## Insertar imágenes de mapas de bits

Para insertar una imagen de mapa de bits, hay que situar el cursor en la posición en la que se quiere que aparezca la imagen y pulsar el menú XHTML > Imagen (o bien utilizar el atajo de teclado Ctrl+h+i o pulsar el botón de Imagen ( ) de la ventana de Herramientas. Imediatamente se abrirá la ventana de diálogo "Imagen".

En el cuadro de texto "Imagen" se puede escribir directamente el URI (absoluto o relativo) de la imagen.

Si se quiere insertar una imagen que se encuentra en el propio ordenador, se debe pulsar el botón "Buscar" ( ). Inmediatamente se abrirá una caja de diálogo estándar de Windows para seleccionar el archivo. Después de moverse hasta la carpeta donde se encuentra el archivo y hacer doble clic sobre el archivo (o seleccionarlo y pulsar "Abrir"), el camino relativo hasta la imagen se creará automáticamente.

En el cuadro de texto "Texto alternativo" se debe escribir (es obligatorio en el XHTML) una descripción breve de la imagen. Ese texto alternativo (que se almacena como atributo alt) es el que deben mostrar los navegadores si no pueden mostrar la imagen. Internet Explorer muestra el atributo alt en forma de "tip" (cuadrito amarillo que aparece cuando se sitúa el ratón encima de la imagen). Al hacer esto, Internet Explorer no está siguiendo la recomendación del W3C, porque el atributo que debería utilizar para el tip es el atributo title. Firefox sí que sigue la recomendación del W3C, así que si sólo se escribe el atributo alt, Firefox no muestra nada cuando se sitúa el ratón encima de la imagen. Si están definidos los dos atributos, tanto Internet Explorer como Firefox muestran en el tip el atributo title.

| <img alt="Este es el atributo alt de una imagen que sólo tiene atributo alt" src="tux.jpg" /> |
| <img alt="Este es el atributo alt de una imagen que tiene los atributos alt y title" title="Este es el atributo title de una imagen que tiene los atributos alt y title" src="tux.jpg" /> |

Es conveniente por tanto que las imágenes incluyan tanto el atributo title como el alt. Para hacerlo en Amaya, hay que seleccionar la imagen una vez insertada y marcar en la ventana de herramientas Atributos el atributo title y escribir su valor en el cuadro de texto que aparece al marcar el atributo.

Volver al índice

## Imágenes flotantes

Las imágenes se insertan como elementos en línea, es decir, como un carácter más en un texto. Salvo que efectivamente se quiera que la imagen aparezca en mitad de una frase, lo normal es querer que la imagen esté a un lado, con el texto fluyendo en un lado de la imagen. Para ello, se debe utilizar la propiedad float en la hoja de estilo.

Volver al índice