fotos verkleinern und speichern

gugug

Grünschnabel
hallo zusammen,
folgender code sollte ein foto verkleinern und speichern:
Code:
   Image im = Toolkit.getDefaultToolkit().getImage(pfad+files[fileAktuell]);   
   
   int h = im.getHeight(null);
   int l = im.getWidth(null);
   
   float vh = 350*100/l;
   int hs = Math.round(h*vh/100);
	 
   Image imScaled = im.getScaledInstance(350,hs,Image.SCALE_SMOOTH);
   BufferedImage bi = new BufferedImage(350,hs,BufferedImage.TYPE_INT_RGB); 
   //bi.createGraphics().drawImage(imScaled,0,0,null); 
   Graphics g = bi.getGraphics();
   g.drawImage(imScaled, 0, 0, null);
   g.dispose();
   
   ImageIcon imic = new ImageIcon((Image)bi);
   //ImageIcon imic = new ImageIcon(imScaled);
   jlbBild.change(imic);
   
   try {
	ImageIO.write(bi,"jpeg",new File(pfad+"gugug.jpg")); 
   } catch (Exception ex) {
	echo(ex.getMessage());
   }
folgendes passiert:
1. wenn ich g.drawImage(imScaled,...) übergebe, wird das bild schwarz.
2. wenn ich g.drawImage(im, ...) übergebe, gibts ein bild von der rechten oberen ecke.
beide varianten sind nicht mein ziel. ziel ist es das foto zu verkleinern und dann zu speichern, doch das nicht...
mfg
felix
 
hallo tom,

danke für die rasche, funktionierende antwort. aber des vertsändnisses halber, wieso funktioniert mein code nicht? er ist quasi identisch mit einem von dir früher geposteten code.
wenn du zeit hast wäre ich froh um die antwort, ansonsten bin ich nicht nachtregend ;) .
danke vielmals.

felice
 
Zurück