La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Immagini in Java ingredienti fondamentali e tecniche di base.

Presentazioni simili


Presentazione sul tema: "Immagini in Java ingredienti fondamentali e tecniche di base."— Transcript della presentazione:

1 immagini in Java ingredienti fondamentali e tecniche di base

2 aprile 2009immagini raster in Java2 generalità array bidimensionali di pixel rettangolari, ciascun pixel ha un colore classe più importante per la rappresentazione di immagini: java.awt.image.BufferedImage gli oggetti BufferedImage rappresentano le immagini esplicitamente in memoria le applicazioni possono creare BufferedImage od ottenerle da file esterni (PNG, GIF ecc.) le applicazioni possono disegnare su immagini costruite o caricate

3 aprile 2009immagini raster in Java3 classi Java BufferedImage, Image Image è superclasse di BufferedImage i metodi di renderizzazione (nella classe Graphics2D) lavorano su Image e quindi anche su BufferedImage, grazie all'ereditarietà ogni BufferedImage ha un ColorModel Raster di dati pittorici

4 aprile 2009immagini raster in Java4 operazioni fondamentali 1)lettura di immagini da file esterni con supporto per vari formati raster 2)visualizzazione di immagini 3)creazione di immagini e loro uso come superficie di disegno 4)salvataggio immagini su file con supporto per vari formati raster

5 aprile 2009immagini raster in Java5 lettura di immagini servizi basati sul package javax.imageio supporto per GIF, PNG, JPEG, BMP e WBMP estendibile ad altri formati come TIFF o JPEG2000 esempio lettura BufferedImage img = null; try { img = ImageIO.read(new File("strawberry.jpg")); } catch (IOException e) { }

6 aprile 2009immagini raster in Java6 metodo ImageIO.read(.) public static BufferedImage read(File input) l'oggetto File (package java.io ) può essere facilmente creato dal nome del file ( new File("strawberry.jpg") ) il formato del file viene riconosciuto automaticamente overloaded restituisce riferimento a un (nuovo) oggetto BufferedImage contenente l'immagine letta lancia eccezioni se input è null o se si verifica un errore nell'accesso al file

7 aprile 2009immagini raster in Java7 visualizzazione di immagini si usa il metodo drawImage(.) della classe Graphics (overloaded) public boolean drawImage(Image img, int x, int y, ImageObserver observer) posizionamento e rendering 1:1 public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer) posizionamento e rendering scalato observer normalmente posto a null (l'uso è avanzato)

8 aprile 2009immagini raster in Java8 filtri nella visualizzazione di immagini è possibile utilizzare filtri un filtro è un algoritmo che viene applicato ai pixel di un'immagine data per produrne una variazione metodo drawImage(BufferedImage img, BufferedImageOp op, int x, int y) di Graphics2D il filtro è descritto dall'oggetto di tipo BufferedImageOp per approfondimenti si veda il tutorial Java2D

9 aprile 2009immagini raster in Java9 salvataggio di immagini simile al caricamento package javax.imageio esempio salvataggio in PNG try { File outputfile = new File("saved.png"); ImageIO.write(, "png", outputfile); } catch (IOException e) }

10 aprile 2009immagini raster in Java10 metodo ImageIO.write(.) public static boolean write(RenderedImage im, String formatName, File output) RenderedImage è una interface implementata da BufferedImage salva l'immagine nel formato specificato dalla stringa formati supportati: JPEG, PNG, GIF, BMP e WBMP restituisce false se il formato specificato è sconosciuto o non supportato lancia eccezioni con parametri/o null o se la scrittura su disco fallisce


Scaricare ppt "Immagini in Java ingredienti fondamentali e tecniche di base."

Presentazioni simili


Annunci Google