2013-02-10 15 views
9

Ich habe eine drawString() Methode in meiner paintComponent Methode. Gibt es eine Möglichkeit, den Text von drawString()fett gezeichnet zu machen? Gibt es auch eine Möglichkeit, den Text größer zu machen? Ich möchte vermeiden, JLabel s zu verwenden, es sei denn, es ist absolut notwendig.Wie mache ich drawString() Text fett?

Antwort

18

Laut Dokumentation von drawString:

Zeichnet den Text durch den angegebenen String angegeben, mit dem aktuellen Schriftart des Grafikkontextes und Farbe. Die Basislinie des äußersten linken Zeichen an der Position (x, y) in diesem Grafikkontext Koordinatensystem

Tatsächlich Graphics Klasse hat die setFont(Font font) Methode zur Verfügung:

g.setFont(new Font("default", Font.BOLD, 16)); 
+4

Sie könnten g.getFont() verwenden, .deriveFont (Font.BOLD), wenn Sie nur den Schriftstil der aktuellen Schriftart ändern wollten ... – MadProgrammer

+0

@MadProgrammer Excellent, das ist, was ich suche. Du hättest deine Antwort hier schreiben sollen. Will +1 ohne zu zögern. – user3437460

+0

Falls dies für andere nicht klar ist, ist 'g' die Leinwand. Wenn Sie zum Beispiel 'public void paintComponent (Graphics canvas)' überschreiben, sollten Sie 'canvas.setFont (new Font (" default ", Font.BOLD, 16));'. –

1

Sie müssen die Schriftart vor dem Zeichnen des Textes festlegen.

g.setFont(font); 
1

Es gibt Methoden: setFont (Font) - Methode in der Klasse java.awt.Component die Schrift dieser Komponente Sets. setFont (Font) - Methode in der Klasse java.awt.Container Legt die Schriftart dieses Containers fest. setFont (Font) - Methode in der Klasse java.awt.Graphics Stellt die Schriftart dieses Grafikkontexts auf die angegebene Schriftart ein.