PDA

View Full Version : java ed inserimento immagini e suoni?????


etzocri
24-05-2003, 12:09
ciao a tutti..
ho un problemino..
dovrei inserire un'immagine in un programma che sto svilupando in JAVA..
il problema č che non trovo il metodo giusto..
riesco ad inserirle nei bottoni.. ma voglio inserirla in un panel..
sono ancora alle prime armi.. aiuto..

p.s. java quali formati di immagini supporta?? e quali formati audio??
grazie per l'interessamento..

monkey72
24-05-2003, 12:24
Image img;
Graphics g;
img=getImage(...);
g.drawImage(...);

AudioClip auc;
auc = getAudioClip (...)
auc.play()

etzocri
24-05-2003, 13:33
grazie molto gentile..
e per i formati??
io ora sto usando il .gif per le immagini e ho visto che per l'audio il .au
funziona..
per gli altri??
ad esempio il jpg e mp3?? e i mid???

monkey72
24-05-2003, 17:10
so che anche il jpg č supportato,
non so altro ;)

energy+
28-05-2003, 13:43
Il jpg e i gif sono supportati direttamente x gli altri formati di devi scrivere una procedura da solo,almeno questo č quello che ho trovato su una guida poco tempo fa x crearmi un visualizzatore di immagini.....

Ciao

PGI
28-05-2003, 14:51
Per i formati video-audio (tra cui midi) puoi scaricare l'API Jave Media Framework

http://java.sun.com/products/java-media/jmf/

Per i formati di immagine BMP, JPEG, JPEG 2000, PNG, PNM, Raw, TIFF, e WBMP l'API Java Advanced Imaging

http://java.sun.com/products/java-media/jai/

La versione 1.4 di Java (JRE/JDK) contiene gią le API per la lettura di file MIDI nel package javax.sound.

Ciao.

etzocri
29-05-2003, 10:06
vi ringrazio tantissimo per le risposte ma non ho risolto i problemi..
con il codice:

Image img;
img.getImage(String);
Graphics.drawImage(img);

mi da alcuni errori..
la classe Image non contiene un metodo getImage() ..

PGI
29-05-2003, 16:06
String nomefile="c:\immagine.jpg";
Image img=Tookit.getDefaultToolkit().getImage(nomefile); (formati jpg e gif).

Per inserirla in un pannello...beh, dipende puoi usare un Canvas o il direttamente il metodo paint(Graphics g) del pannello. Scrivi se hai bisogno di un pezzo di codice.

Ciao.

etzocri
30-05-2003, 09:53
ti ringrazio tantissimo.. se mi posti un pezzo di codice con un esempio ti sarņ grato per l'eternitą..

PGI
30-05-2003, 17:20
Et voilą!
Per caricare l'immagine puoi usare (come ho fatto) il metodo getImage() della classe ImageIcon, in modo da essere certo di avere anche le dimensioni dell'immagine.


import java.awt.*;
import javax.swing.*;

public class MainWindow {
public MainWindow() {
Image img=new ImageIcon("f:\\sample.jpg").getImage();
JFrame frame=new JFrame("Sample");
ImagePane imgPane=new ImagePane(img);
frame.setContentPane(imgPane);
frame.pack();
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}

public static void main(String[] a) {
new MainWindow();
}

class ImagePane extends JPanel{
Image currentImage=null;
ImagePane(Image img) {
setPreferredSize(new Dimension(img.getWidth(null),img.getHeight(null)));
currentImage=img;
}

public void paint(Graphics g) {
if(currentImage!=null) {
g.drawImage(currentImage,0,0,null);
}
}
}
}


Ciao.

etzocri
31-05-2003, 11:18
grazie troppo gentile