Post

Visualizzazione dei post con l'etichetta BufferedImage

Caricamento di immagini multiple

DOMANDA: Come posso caricare immagini multiple in un'interfaccia grafica Java? RISPOSTA: Prendendo spunto dalla domanda fatta nel post Caricamento di immagini , vi mostrerò ora come caricare immagini multiple . Le differenze sono sostanzialmente nella creazione di un oggetto Immagine dedicato ed alla gestione di un numero dinamico di immagini.  Vediamo la nuova classe Immagine.java : package immagini; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; public class Immagine { private static long count = 0; private long id ; private BufferedImage image ; private int x ; private int y ;     // "imagePath" è il path dell'immagine da caricare     // x e y sono le coordinate dell'immagine public Immagine(String imagePath, int x, int y) { this .image = loadImage(imagePath); this . x = x; this . y = y; this . id = count ++;

Caricamento di immagini

DOMANDA: Come posso caricare delle immagini in un'interfaccia grafica Java? RISPOSTA: Per caricare le immagini in un'interfaccia Java, è possibile utilizzare le classi JFrame , JPanel e  BufferedImage per effettuare il load vero e proprio. Questa soluzione è molto più adeguata e flessibile del caricamento di icone descritto in questo post .  Nell'esempio presentato vedremo infatti come posizionare l'immagine tramite variabili e come renderizzarla usando l'oggetto Graphics  che fornisce numerosi m etodi ed effetti applicabili alle BufferedImage (ad esempio la rotazione, traslazione, effetto trasparenza, e tanti altri). Cominciamo col creare un Pannello.java : package immagini; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import javax.swing.JPanel; public class Pannello extends JPanel {