String-Länge in Pixeln in Java
Gibt es eine Möglichkeit zu berechnen, die die Länge eines Strings in Pixel, die aufgrund einer bestimmten java.awt.Font
Objekt, dass nicht mit jedem GUI-Komponenten?
Ist das für awt-Font?
Siehe auch Antwort für die Verwendung einer
Siehe auch Antwort für die Verwendung einer
GlyphVector
. Es stellt das endgültige Bild in eine GUI, aber das ist nur, um es anzuzeigen.InformationsquelleAutor APerson | 2012-11-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es hängt davon ab, was Sie hier bedeuten. Ich nehme an, Sie meinen, Sie wollen es tun, ohne dass ein
HeadlessException
.Ist der beste Weg, mit ein
BufferedImage
. AFAIK, dies wird nicht werfen eineHeadlessException
:Anderes als mit so etwas, ich glaube nicht, dass Sie können. Benötigen Sie einen Grafik-Kontext, in Reihenfolge zu erstellen ein
FontMetrics
und geben Sie die Schriftgröße Informationen.InformationsquelleAutor
Können Sie die
Graphics2D
- Objekts, um die schriftart Grenzen (einschließlich der Breite):Aber das hängt davon ab, wie du die
Graphics2D
Objekt (zum Beispiel von einemImage
).Ich unterscheiden,
Image
's sind keine GUI-Komponenten.Ich bin damit einverstanden, aber die spezifische Notwendigkeit, es zu tun, OHNE GUI-Komponenten beinhalten würde, awt, im Allgemeinen, andernfalls die Forderung macht wenig Sinn.
Ich verstehe nicht, was Sie sind. Die
Graphics2D
erhalten werden können, von so etwas wieimg.getGraphics()
(oder eherimg.createGraphics()
) in Brian ' s code.warum würden Sie angeben, "ohne GUI-Komponenten", es sei denn, es wurde eine Notwendigkeit zu vermeiden, awt, Graphics2d? Da ist ziemlich viel, wie Sie würde es tun, auch wenn man über die GUI.
InformationsquelleAutor
Dieser gibt die Ausgabe von (137.0, 15.09375) für mich. Ich habe keine Ahnung, was die Einheiten sind, aber es sieht proportional korrekt und nicht Graphics2D direkt.
InformationsquelleAutor