## Utilizar Imágenes

Esto es una imagen:

Las siguientes páginas proporcionan lo detalles necesarios para trabajar con imágenes. Aprenderás cómo cargarlas, mostrarlas y manipularlas.

El soporte para la utilización de imágenes está situado en los paquetes java.applet, java.awt y java.awt.image. Cada imagen está representada por un objeto java.awt.image. Además de la clase Image, el paquete java.awt proporciona otro soporte básico para imágenes, como el método drawImage() de la clase Graphics, el método getImage() de la clase Toolkit y la clase MediaTracker. En el paquete java.applet, el método getImage() de la clase Applet hace que los applet carguen imágenes de forma sencilla, utilizando URLs.Finalmente el paquete java.awt.image proporciona interfaces y clases que permiten crear, manipular y observar imágenes.

#### Cargar Imágenes

> El AWT hace sencilla la carga de imágenes en estos dos formatos: GIF y JPEG. Las clases Applet y Toolkit proporcionan los métodos getImage() que trabajan con ambos formatos. Puedes utilizarlas de esta forma:

>     myImage = getImage(URL); //in a method in an Applet subclass only
>         or
>     myImage = Toolkit.getDefaultToolkit().getImage(filenameOrURL);

> Los métodos getImage() vuelven inmediatamente, por lo que no se tiene que esperar a que se cargue una imagen antes de ir a realizar otras operaciones en el programa. Mientras esto aumenta el rendimiento, algunos programas requieren más control sobre la imagen que se están cargando. Se puede controlar el estado de la carga de una imagen utilizando la clase MediaTracker o implementando el método imageUpdate(), que está definido por el inteface ImageObserver.

> Esta sección también explicará cómo crear imágenes al vuelo, utilizando la clase MemoryImageSource.

#### Mostrar Imágenes

> Es sencillo dibujar una imagen utilizando el objeto Graphics que se pasó a sus métodos update() o paint(). Simplemente se llama al método drawImage() del objeto Graphics.Por ejemplo:

>     g.drawImage(myImage, 0, 0, this);

> Esta sección explica las cuatro formas de drawImage(), dos de la cuales escalan la imagen. Al igual que getImage(), drawImage() es asíncrona, vuelve inmediatamente incluso si la imagen no se ha cargado o dibujado completamente todavía.

#### Manipular Imágenes

> Esta sección ofrece una introducción sobre cómo cambiar imágenes, utilizando filtros. (El escalado de imágenes se cubre en Mostrar Imágenes.)

Ozito