IMMAGINI


 


Immagini

Supporto per usare immagini e’ fornito dai package java.applet, java.awt e java.awt.image

Caricare immagini

Possono essere in 2 formati: gif e jpeg

Il metodo getImage e’ fornito dalle seguenti classi: applet e toolkit

1) la classe applet fornisce 2 metodi getImage() , entrambi devono essere chiamati da un metodo come init(), e non da un costruttore.

public Image getImage(URL url)

image image1=getImage(getCodebase(), "imagefile.gif")

public Image getImage(URL url, String name)

image image2=getImage(new URL("http://...

2) la classe toolkit fornisce altri 2 metodi getImage() (usabili anche per applicazioni)

public abstract Image getImage(URL url)

public abstract Image getImage(URL url, String name)

Toolkit toolkit=Toolkit.getDefaultToolkit();

Image image1=toolkit.getImage("immagine.gif")

Image image2=toolkit.getImage(new URL("http://...

si puo’ ricevere un oggetto toolkit sia invocando il metodo della classe toolkit getDefaultToolkit() o il metodo di dichiarazione getToolkit

 

Richiesta e tracciamento del caricamento delle immagini

l’awt fornisce 2 metodi per monitorare il tracciamento delle immagini

- MediaTraker = basta instanziare il MediaTracker e chiedergli di tracciare lo stato di 1 o piu’ immagini. Fornisce 1 metodi checkID, checkAll(), waitForID(), waitForAll()

- L’interfaccia ImageObserver = rileva l’inizio e la fine di un tracciamento del MediTracker.Implementa il metodo imageUpdate() chiamato quando le informazioni di un immagine divengono disponibili.

 

Filtri

Image Producer - - - -(image data) - - - - [ImageFilter] - - (modified image data) - - Image Consumer

 

Come usare un filtro

es. Image.sourceImage

.... // inizializzazione di sourceImage usando Toolkit o applet getImage

ImageFilter = new someImageFilter;

ImageProducer producer = new FilteredImageSource(sourceImage.getSource().filter);

image resultImage = createImage(producer)

Passi per usare un filtro

1) caricare un immagine

2) tramite getSource() caricare la sorgente (ImageProducer) dell’oggetto immagine

3) creare un istanza del filtro, inizializzando il filtro

4) creare un oggetto FilteredImageSource passando al costruttore l’immagine sorgente e il filtro

5) con il metodo createImage() creare una nuova immagine che la la FilteredImageSource come producer

Il jawa.awt.image fornisce un filtro CropImageFilter che definisce i seguenti metodi:

setDimension(), setProperties(), setPixel().

 

1