Alternative zu getFontMetrics um Stringlänge zu berechnen

Status
Nicht offen für weitere Antworten.
Hallo Zusammen,
ich erstelle mit iText PDFs die Tabellen enthalten. Um die optimale Spaltenbreite einzustellen berechne ich die Länge des Strings in einer Spalte folgendermaßen (das Textfeld wird nicht dargestellt, es dient nur der Größenberechnung):
Java:
JTextField tf = new JTextField();
tf.setFont(new java.awt.Font("Helvetica", Font.NORMAL, 10));
FontMetrics fm = Toolkit.getDefaultToolkit().getFontMetrics(new java.awt.Font("Helvetica", Font.NORMAL, 10));
int spaltenbreite = fm.stringWidth(text)
Mir wird allerdings angezeigt, dass getFontMetrics veraltet ist (deprecated). Gibt es eine Alternative um die Länge des Strings zu berechnen? Ich habe keine Lust das mein Code in der nächsten Java Version nicht mehr funktioniert, weil es die Funktion getFontMetrics nicht mehr existiert.

Vielen Dank im Vorraus
 
Zuletzt bearbeitet:
Wo in deinem Code benutzt du denn dein Textfeld? Der Ansatz ist schon gut, aber statt Toolkit musst du das Textfeld nehmen:
Java:
JTextField  temp    = new JTextField();
FontMetrics metrics = temp.getFontMetrics( new Font(...) );
//...
 
Danke, wenn man so lange auf den Code starrt erkennt man solche kleinen Fehler nicht mehr 🙂 so wird nicht als veraltet gekennzeichnet

Java:
JTextField tf = new JTextField();
tf.setFont(new java.awt.Font("Helvetica", Font.NORMAL, 10));
FontMetrics fm = Toolkit.getDefaultToolkit().getFontMetrics(new java.awt.Font("Helvetica", Font.NORMAL, 10));
int spaltenbreite = fm.stringWidth(text);
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben