• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
Graphics - Visualizzare immagini
Come visualizzare le immagini
La classe Graphics del package AWT permette di visualizzare le immagini GIF eJPG 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 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.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 
,
, 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 
,
,
larghezza
,
altezza
null);
larghezza e altezza sono valori interi.
Autore: Cinzia BocchiUltimo aggiornamento: 05/11/2011
1
 
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
 
=0;
 public
 
static
 
final
 
int
 
=0;
 public
 
static
 
final
 
int
 
LARGHEZZA 
=800;
 public
 
static
 
final
 
int
 
ALTEZZA 
=600;
 private
ContainercontentPane;
 private
Cornicec;
 public
ImageShow(){setDefaultCloseOperation(JFrame.
EXIT_ON_CLOSE 
);contentPane= getContentPane();setTitle("Visualizzatore di immagini");setSize(
LARGHEZZA 
,
ALTEZZA 
);setLocation(
,
);c=
new
Cornice();contentPane.add(c); }
class
Cornice
extends
JPanel{
 public
 
static
 
final
 
int
 
=0;
 public
 
static
 
final
 
int
 
=0;
 private
Imageimg;
 public
Cornice(){
try
{URL imgPath =getClass().getClassLoader().getResource("img/mare1jpg");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
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...