Graphics zu Image

Smily0412

Mitglied
hoi,
folgendes Problem:
Ich habe ein Graphics-Objekt (von einem Frame per getGraphics() bekommen), und ich würde darraus gerne ein Image-Objekt (bzw ein BufferedImage) machen.

Ist das irgendwie möglich?

thx,
Smily0412
 
Hallo,

ich denke wohl eher, du willst, das was das Graphics-Object zeichnet als Image haben, oder?

Was möchtest du denn machen?

MFG

zEriX
 
Hier mal ein kleiner Code als Beispiel:

Ich möchte, dass wenn ich die Leertaste drücke, der Inhalt des kompletten Frames in einem (Buffered)Image gespeichert wird.
Ich brauche das, da ich den Inhalt des Fensters weiterverarbeiten möchte (z.B. als JPG Speichern oder mittels iText in ein PDF-Dokument mit einbinden)

Java:
package test;
import java.awt.*;
public class Snapshoot extends Frame {
	private static final long serialVersionUID = 1L;

	public static void main(String[] args) {
		new Snapshoot();
	}
	
	public Snapshoot() {
		setVisible(true);
		setBackground(Color.BLACK);
		setSize(300,300);

		addKeyListener(new KeyListener() {
			public void keyPressed(KeyEvent e) {
				if(e.getKeyChar()==' ') {
					Graphics g = getGraphics();
					/* und jetzt? */
				}
			}
			public void keyReleased(KeyEvent e) {}
			public void keyTyped(KeyEvent e) {}
		});

		addMouseMotionListener(new MouseMotionListener() {
			public void mouseDragged(MouseEvent e) {
				Graphics g = getGraphics();
				g.setColor(Color.WHITE);
				g.drawLine(e.getX(), e.getY(), e.getX(), e.getY());				
			}
			public void mouseMoved(MouseEvent e) {}
		});
	}
}
 
Zuletzt bearbeitet:
Zurück