ScreenShot erstellen

Developer_X

Top Contributor
HI. Was ich will:
1. Ich zeige etwas auf dem Bild schirm an.
2. Danach soll ein Screenshot geschossen werden.
3. Fenster soll geschlossen werden.

Mein Problem :
Ich habe ein Bildverarbeitungssystem, an dem ich gerade arbeite, und da passiert nie etwas. Da dachte ich mir, ich speichere das bild mal in einer Datei, (über ImageIO.write(..)😉 Als ich mir das Bild ansah, war nur ein weißes Bild.
Der Screenshot wird also nicht korrekt geschossen.
Warum?

Info:
Das Fenster ist nur solange offen, bis der Robot den Screenshot gemacht hat.
Ich zeichne ein Bild b von der Größe eines anderen Bildes a, und dann will ich das durch screenshots speichern, in einem BufferedImage und damit weiterarbeiten.

Kann mir einer Sagen, warum das BufferedImage ( der Screenshot) leider weiß ist? (null ist er nicht)
mein Code:
Java:
JPanel p = new JPanel()
		{
			public void paintComponent(Graphics g)
			{
				//...
			}
		};
		frame.add(p,"Center");
		frame.setVisible(true);
		
		BufferedImage m = null;
		// a ist eine BufferedImage das ich zeichne das fenster ist so groß wie >>a<<
		try 
		{
			Robot r = new Robot();
			m = r.createScreenCapture(new Rectangle(0,0,a.getWidth(),a.getHeight()));
			frame.setVisible(false);
	
		} 
		catch (AWTException e)
		{
			e.printStackTrace();
		}
 
Warum zeichnest du nicht direkt in ein Image und speicherst das dann?
Warum der Screenshot weiß ist weiß ich nicht. Vielleicht zeichnest du nur weiß auf weiß?
 
Wird das Bild über haupt angezeigt?

Ist es fertig, während der Screenshot geschossen wird?
 
Anstatt eines KSKBS frage ich euch ob mein vorhaben, vielleicht auch auf anderem Wege gelöst werden kann.

Mein Vorhaben:
Ich habe zwei Bilder, A und B.
Beide sind von der Größe her nicht identisch, deshalb beschließe ich, dass ich B in die Größe von A stretche. Da dachte ich mir, ich zeiche B in der Größe von A, speichere diese Zeichnung dann, und arbeite dann mit A und dem gestrechten B.

Geht das anders?
 

Neue Themen


Zurück
Oben