ich möchte einen Text, der in einen JLabel dargestellt werden soll (oder etwas anderem, wenn es günstigere Lösungen gibt), vermessen. Das mache ich bis jetzt so:
//Font f;
Rectangle2D r = f.getStringBounds(text, new FontRenderContext(new AffineTransform(), false, false));
Funktioniert auch ganz ok. Allerdings bekomme ich es so nicht hin, einen Zeilenumbruch in den String zu integrieren. Bei der Lösung mit HTML funktioniert das Vermessen überhaupt nicht, da der Roh-String vermessen wird.
Hat jemand dazu eine Idee?
Danke für die Antwort,
wie mir scheint, machen die FontMetrics so ziemlich das gleiche wie direkt über den Font.
Wie würdest du denn hier Zeilenumbrüche darstellen? HTML wird ja sicher nicht interpretiert…
Hm… so hatte ich das auch schon versucht. Aber weder werden im JLabel die Zeilenumbrüche angezeigt, noch werden diese beim Messen berücksichtigt. Es ist alles so, als wären sie gar nicht da. bei \r\n das gleiche…
Ich fürchte das Ursprungsproblem lässt sich nur lösen, indem man die einzelnen Zeilen ohne HTML Code vermisst (unter verwendung der entsprechenden Schrift).