Top Banner
 Graphics - Visualizzare immagini Come visualizzare le immagini La classe Graphics del package AWT permette di visualizzare le immagini GIF e JPG in un contesto grafico. Le azioni da compiere sono 2: 1. caricare l’immagine; 2. visualizzare l’immagine. 1. Car icare un’immagine Se l’immagine è memorizzata in un file locale, si utilizza la seguente chiamata: Image immagine = ImageIO.read(new File( filename)); Image è una classe astratta di AWT, derivata da Object, che è la superclasse di tutte le classi che rappresentano immagini. ImageIO, derivata anchessa da Object, appartiene al package  javax.imageio e dispone di metodi statici per la gestione di immagini da file. File è una sottoclasse concreta di Object, appartenente al package java.io, che rappresenta il pathname di un file o di una directory. Se l’immagine è memorizzata in un file remoto, si utilizza la seguente chiamata: String urlname= “url ”; Image immagine = ImageIO.read(new URL(urlname)); Il metodo read lancia una IOException se l’immagine non è disponibile. 2. Visual izza re un’immagine L’ ogg etto immagine contiene il riferimento a un oggetto che incapsula i dati dell’immagi ne. Per visualizzare l’o gge tto immagine è suf fic iente utilizzare il metodo drawImage della classe Graphics: g.drawImage = (immagine,  x , y , null); L’immagine visualizzata ha il ve rtice superiore sinistro coincident e con le coordinate x e y passate come parametri. In alternativa, è possibile modificare la dimensione dell’immagine aggiungendo i paramentri larghezza e altezza: g.drawImage = (immagine,  x , y , larghezza, altezza null); larghezza e altezza sono valori interi. Autore: Cinzia Bocchi Ultimo aggiornamento: 05/11/2011  1
3

Graphics - Visualizzare Immagini

Jul 11, 2015

Download

Documents

Cinzia Bocchi

Esempio di un visualizzatore di immagini Java
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Graphics - Visualizzare Immagini

5/11/2018 Graphics - Visualizzare Immagini - slidepdf.com

http://slidepdf.com/reader/full/graphics-visualizzare-immagini 1/3

 

Graphics - Visualizzare immagini

Come visualizzare le immagini

La classe Graphics del package AWT permette di visualizzare le immagini GIF e

JPG in un contesto grafico. Le azioni da compiere sono 2:

1. caricare l’immagine;2. visualizzare l’immagine.

1. Caricare un’immagine

Se l’immagine è memorizzata in un file locale, si utilizza la seguente chiamata:

Image immagine = ImageIO.read(new File(filename));

−Image è una classe astratta di AWT, derivata da Object, che è la superclassedi tutte le classi che rappresentano immagini.

− ImageIO, derivata anch’essa da Object, appartiene al package javax.imageio e dispone di metodi statici per la gestione di immagini da file.

− File è una sottoclasse concreta di Object, appartenente al package java.io,che rappresenta il pathname di un file o di una directory.

Se l’immagine è memorizzata in un file remoto, si utilizza la seguente chiamata:

String urlname= “url ”;Image immagine = ImageIO.read(new URL(urlname));

Il metodo read lancia una IOException se l’immagine non è disponibile.

2. Visualizzare un’immagine

L’oggetto immagine contiene il riferimento a un oggetto che incapsula i datidell’immagine. Per visualizzare l’oggetto immagine è sufficiente utilizzare ilmetodo drawImage della classe Graphics:

g.drawImage = (immagine,  x , y , null);

L’immagine visualizzata ha il vertice superiore sinistro coincidente con lecoordinate x e y passate come parametri.

In alternativa, è possibile modificare la dimensione dell’immagine aggiungendo iparamentri larghezza e altezza:

g.drawImage = (immagine,  x , y , larghezza, altezza null);

larghezza e altezza sono valori interi.

Autore: Cinzia BocchiUltimo aggiornamento: 05/11/2011

1

Page 2: Graphics - Visualizzare Immagini

5/11/2018 Graphics - Visualizzare Immagini - slidepdf.com

http://slidepdf.com/reader/full/graphics-visualizzare-immagini 2/3

 

Esempio: Visualizzare un’immagine da file

import java.awt.Container;

import java.awt.Graphics;

import java.awt.Image;

import java.io.File;import java.io.IOException;

import java.net.URISyntaxException;

import java.net.URL;

import javax.imageio.ImageIO;

import javax.swing.JFrame;

import javax.swing.JPanel;

@SuppressWarnings("serial")

 public class ImageShow extends JFrame {

 public static final int X =0;

 public static

 final

 int

 Y =0;

 public static final int LARGHEZZA =800;

 public static final int ALTEZZA =600;

 private Container contentPane;

 private Cornice c;

 public ImageShow()

{

setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE );

contentPane= getContentPane();

setTitle("Visualizzatore di immagini");

setSize(LARGHEZZA ,ALTEZZA );

setLocation(X ,Y );

c= new Cornice();

contentPane.add(c);

}

class Cornice extends JPanel

{

 public static final int X =0;

 public static final int Y =0;

 private Image img;

 public Cornice()

{

try

{

URL imgPath =

getClass().getClassLoader().getResource( "img/mare1

jpg");

img= ImageIO.read (new File(imgPath.toURI()));

}

catch(IOException ecc)

{

System.out.println(ecc.getMessage());

}

catch(URISyntaxException ecc)

{

System.out.println(ecc.getMessage());

}

}

 public  void  paintComponent(Graphics g)

Autore: Cinzia BocchiUltimo aggiornamento: 05/11/2011

2

Page 3: Graphics - Visualizzare Immagini

5/11/2018 Graphics - Visualizzare Immagini - slidepdf.com

http://slidepdf.com/reader/full/graphics-visualizzare-immagini 3/3

 

{

super.paintComponent(g);

g.drawImage(img,X ,Y ,null);

}

}

 public static  void  main(String args[]){

ImageShow frame= new ImageShow();

frame.setVisible(true);

}

}

L’output prodotto è il seguente:

Figura 1. L’immagine visualizzata con ImageShow

Quest'opera è stata rilasciata con licenza Creative Commons Attribution-ShareAlike 3.0 Unported. Per 

leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/by-sa/3.0/ ospedisci una lettera a Creative Commons, 171 Second Street, Suite 300, San Francisco, California,94105, USA.

Autore: Cinzia BocchiUltimo aggiornamento: 05/11/2011

3