Hallo zusammen,
ich bin gerade dabei, ein JPanel als Bild abzuspeichern. Da ich aber die Bildauflösung vor dem Speichern selbst bestimmen möchte, ändere ich die Größe des JPanels an die definierte Bildgröße, um in dem Zustand mein JPanel abzuspeichern, anschließend wird die ursprüngliche Größe wiederhergestellt. Nun habe ich das Problem, dass die erste Abspeicherung komplett schwarzes Bild liefert. Alle weitere Male bekomme ich korrekte Abzüge vom JPanel. Ich vermute, dass die Verkleinerung vor dem Speichern daran schuld ist, sodass das Image Objekt in dem Moment erstellt wurde, als das JPanel noch im Verkleinerungsprozess war.
hier mein Code:
Hätte jemand Ahnung, woran es liegen könnte, dass das erste Bild komplett schwarz ist?
Ich bedanke mich für eure Hilfe im voraus!
Sergej
ich bin gerade dabei, ein JPanel als Bild abzuspeichern. Da ich aber die Bildauflösung vor dem Speichern selbst bestimmen möchte, ändere ich die Größe des JPanels an die definierte Bildgröße, um in dem Zustand mein JPanel abzuspeichern, anschließend wird die ursprüngliche Größe wiederhergestellt. Nun habe ich das Problem, dass die erste Abspeicherung komplett schwarzes Bild liefert. Alle weitere Male bekomme ich korrekte Abzüge vom JPanel. Ich vermute, dass die Verkleinerung vor dem Speichern daran schuld ist, sodass das Image Objekt in dem Moment erstellt wurde, als das JPanel noch im Verkleinerungsprozess war.
hier mein Code:
Java:
panel.setSize(imageWidth, imageHeight);
panel.repaint();
BufferedImage image = new BufferedImage(imageWidth, imageHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D g = image.createGraphics();
panel.paint(g);
ImageIO.write(image, "jpg", new File("test.jpg"));
//Wiederherstellung des ursprünglichen Zustands..
Hätte jemand Ahnung, woran es liegen könnte, dass das erste Bild komplett schwarz ist?
Ich bedanke mich für eure Hilfe im voraus!
Sergej