16. oktober 2003 - 11:08
Der er
5 kommentarer og 1 løsning
hvordan virker createImage(int,int)
jeg prøver at tage et billede fra en JFrame med metoden createImage(100,100), og derefter skrive det til disken.. måske har jeg misforstået metoden, men jeg får kun et gråt billede gemt ?? BufferedImage img = (BufferedImage) createImage(100,100); try { ImageIO.write(img, "png", new File("test.png")); } catch(Exception es){es.printStackTrace();}
Annonceindlæg tema
16. oktober 2003 - 11:32
#1
Det her virker: BufferedImage image = new BufferedImage(320, 200, BufferedImage.TYPE_INT_RGB); Graphics graphics = image.getGraphics(); this.paintAll(graphics); try { ImageIO.write(image, "png", new File("test.png")); } catch(Exception ex) { ex.printStackTrace(); }
16. oktober 2003 - 11:32
#2
Hvis det er et partielt screenshot du vil have.
16. oktober 2003 - 11:53
#3
nu virker det endeligt ! men dit eksempel starter i 0,0 kan det ændres og evt. specificere at det er en jpanel man vil have et billede af ??
16. oktober 2003 - 12:04
#4
Hmmm. Dette virker: Dimension dim = this.getSize(null); BufferedImage temp = new BufferedImage(dim.width, dim.height, BufferedImage.TYPE_INT_RGB); Graphics graphics = temp.getGraphics(); this.paintAll(graphics); BufferedImage image = temp.getSubimage(100, 100, 320, 200); try { ImageIO.write(image, "png", new File("test.png")); } catch(Exception ex) { ex.printStackTrace(); } Men, måske er der en nemmere måde ?
16. oktober 2003 - 12:04
#5
Altså, tag screenshot af det hele og udpluk et subimage og skriv det til disk.
16. oktober 2003 - 12:18
#6
jeg siger mange tak for hjælpen !
Kurser inden for grundlæggende programmering