Miten seuraavat toiminnot toteutetaan yksinkertaisesti JDK 5.0:lla:
* Kuvan lataus muistiin (ImageIcon?)
* Kuvakoon muutos (icon.getImage().getScaledInstance?)
* Kuvan tallennus (???)
* Kuvan lataus muistiin (ImageIcon?)
* Kuvakoon muutos (icon.getImage().getScaledInstance?)
* Kuvan tallennus (???)
Vastaukset 2
Vanhimmat
Malli löytyi mutta kovasti on hankalan oloinen. Pitänee tehdä oma apuluokka ja metodeja jotka piilottavat Java:n turhaa monimutkaisuutta?!?? Luokka JPEGImageDecoder mietityttää. Mitä jos ohjelman pitäisi toimia muillakin kuin Sun:in Java:lla?
http://forums.java.sun.com/thread.jspa?threadID=260711&tstart=0
Esimerkiksi kuvan lataaminen:
================================
BufferedImage bi = null;
try {
// load file from disk using Sun's JPEGIMageDecoder
FileInputStream fis = new FileInputStream(fileName);
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(fis);
bi = decoder.decodeAsBufferedImage();
fis.close();
}
catch (Exception e) {}
================================
Löytyipäs siisti ratkaisu kuvien lukemiseen ja kirjoittamiseen. Kirjasta Core Java2 Volume II-Advanced Features (seventh edition):
File f=...;
BufferedImage image=ImageIO.read(f);
ImageIO.write(image,format,f);