Graphics2D und BufferedImage

Status
Nicht offen für weitere Antworten.
Folgende Methode habe ich – mal wieder –einem Buch entnommen:
Code:
public static BufferedImage makeMessageImage(String message, 
			String fontName, 
			int fontSize)
	{
		Font font = new Font(fontName, Font.PLAIN, fontSize);
		FontMetrics metrics = getFontMetrics(font);
		int messageWidth = metrics.stringWidth(message);
		int baselineX = messageWidth/10;
		int width = messageWidth + 2*(baselineX + fontSize);
		int heigth = fontSize*7/2;
		int baselineY = heigth*8/10;
		BufferedImage messageImage =
			new BufferedImage(width, heigth, 
			BufferedImage.TYPE_INT_RGB);
		Graphics2D g2d = (Graphics2D)messageImage.getGraphics();
		g2d.setBackground(Color.white);
		g2d.clearRect(0, 0, width, heigth);
		g2d.setFont(font);
		g2d.translate(baselineX, baselineY);
		g2d.setPaint(Color.lightGray);
		AffineTransform origTransform = g2d.getTransform();
		g2d.shear(-0.95, 0);
		g2d.scale(1, 3);
		g2d.drawString(message, 0, 0);
		g2d.setTransform(origTransform);
		g2d.setPaint(Color.black);
		g2d.drawString(message, 0, 0);
		return messageImage;
	}

Was ich mich nun Frage ist, wieso eigentlich das BufferedImage-Objekt zurückgegeben werden kann, obwohl es doch eigentlich nur kreiert wird, um ein Graphics2D-Objekt zu liefern (Zeile 16). Müsste nicht im Prinzip das Graphics2D-Obejtk zurückgegeben werden? Oder wo bleibt dies ab?
 

Wildcard

Top Contributor
Bitte?
Man erzeugt das Graphics Objekt um auf das Bild zeichnen zu können welches man anschließend zurück gibt.
Was ist daran unverständlich? ???:L
 

Marco13

Top Contributor
Das Graphics2D-Objekt wird nur als "Zugang" zum BufferedImage verwendet. Irgendwie müssen die Daten ja in das BufferedImage rein kommen. Und dazu verwendet man das Graphics2D.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Graphics2D Objekt mir der Maus erstellen Java Basics - Anfänger-Themen 5
K Zwei Fragen zu Graphics/Graphics2D Java Basics - Anfänger-Themen 5
Mr. Pink Graphics2D in anderer Methode aufrufen Java Basics - Anfänger-Themen 6
P Graphics2D Uhr refreshen Java Basics - Anfänger-Themen 2
B Erste Schritte Drehen in Graphics2d Java Basics - Anfänger-Themen 2
T Threads Thread & Graphics2D Java Basics - Anfänger-Themen 8
C Graphics2D - DrawRect - Warum Linien teilweise gefüllt? Java Basics - Anfänger-Themen 12
D Graphics2D (Welle darstellen) Java Basics - Anfänger-Themen 2
F Graphics2D nützlich für R³? Java Basics - Anfänger-Themen 11
C Graphics2D auf anderes Graphics2D übertragen Java Basics - Anfänger-Themen 5
P Graphics2D.drawString: Zahlen rechtsbündig ausrichten? Java Basics - Anfänger-Themen 2
Z Farbwechsel JButton mit Graphics2D Java Basics - Anfänger-Themen 7
T Anfänge mit Graphics2D Java Basics - Anfänger-Themen 15
X Kreize zeichnen in Graphics2D Java Basics - Anfänger-Themen 2
D Graphics2D.drawImage(Image, int, int, ?); Java Basics - Anfänger-Themen 2
Mr.Strobel BufferedImage Exportieren Eclipse Java Basics - Anfänger-Themen 14
A BufferedImage zeigt nur schwarz Java Basics - Anfänger-Themen 3
A BufferedImage Pixel Java Basics - Anfänger-Themen 7
pkm Best Practice BufferedImage in JPane darstellen - aber wie? Java Basics - Anfänger-Themen 22
T BufferedImage in Jar Java Basics - Anfänger-Themen 8
C Problem beim laden eines BufferedImage Java Basics - Anfänger-Themen 2
S BufferedImage heller/dunkler machen mit RescaleOp Java Basics - Anfänger-Themen 2
D Jpg in BufferedImage Reader oder Array ablegen? Java Basics - Anfänger-Themen 5
F BufferedImage Speicher Nutzung Java Basics - Anfänger-Themen 2
S BufferedImage Java Basics - Anfänger-Themen 2
Ernesto95 BufferedImage Teilbereich wieder transparent setzen Java Basics - Anfänger-Themen 16
M BufferedImage performant einlesen Java Basics - Anfänger-Themen 5
A BufferedImage in Android einbinden - Bild spiegeln -wie? Java Basics - Anfänger-Themen 4
O BufferedImage drehen, falsch positioniert Java Basics - Anfänger-Themen 5
K BufferedImage, Bilder laden Java Basics - Anfänger-Themen 15
H BufferedImage DPI verändern Java Basics - Anfänger-Themen 5
S jpeg bzw bufferedimage als PDF Speichern Java Basics - Anfänger-Themen 13
W von Graphics in BufferedImage Java Basics - Anfänger-Themen 10
H BufferedImage Java Basics - Anfänger-Themen 5
F BufferedImage aus short[][][] Java Basics - Anfänger-Themen 3
Luk10 NPE bei BufferedImage[] Java Basics - Anfänger-Themen 4
S BufferedImage mit farbwerten füllen Java Basics - Anfänger-Themen 11
I Probleme beim Laden eins BufferedImage Java Basics - Anfänger-Themen 8
P BufferedImage als raw speichern Java Basics - Anfänger-Themen 3
C BufferedImage + Popup/Overlay Java Basics - Anfänger-Themen 2
E BufferedImage drucken Java Basics - Anfänger-Themen 3
R BufferedImage in JLabel Java Basics - Anfänger-Themen 2
G Serialisiertes BufferedImage wieder einlesen Java Basics - Anfänger-Themen 13
G Jpanel -> BufferedImage konvertieren Java Basics - Anfänger-Themen 7
G BufferedImage in Applet laden Java Basics - Anfänger-Themen 8
Q BufferedImage aus Bild in jar Java Basics - Anfänger-Themen 2
? BufferedImage löschen Java Basics - Anfänger-Themen 4
F Farben eines ganzen BufferedImage invertieren Java Basics - Anfänger-Themen 2
D wie kann ich ein BufferedImage komprimieren? Java Basics - Anfänger-Themen 7
reibi TIFF nach BufferedImage wandeln Java Basics - Anfänger-Themen 72
reibi Farbiges BufferedImage umwandeln zu 2farbig SchwarzWeiss Java Basics - Anfänger-Themen 7
E nullpointer bei BufferedImage Java Basics - Anfänger-Themen 2
M BufferedImage erzeugt OutOfMemoryError Java Basics - Anfänger-Themen 10
B Vorteil von Graphic2D und BufferedImage? Java Basics - Anfänger-Themen 6
U BufferedImage anzeigen, imageIcon oder paintComponent(); Java Basics - Anfänger-Themen 6
X Image nach BufferedImage wandeln ? Java Basics - Anfänger-Themen 9
T BufferedImage kopieren Java Basics - Anfänger-Themen 6
G Image -> BufferedImage Java Basics - Anfänger-Themen 4
M Image/BufferedImage Java Basics - Anfänger-Themen 4
T Multiple BufferedImage Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben