For measuring height, FontMetrics is quite crude. FontMetrics. getAscent, getHeight and getDescent are only approximate and includes a lot of white space. getHeight even includes the suggested leading to the next line.
For more accuracy, you need LineMetrics with takes a sample string of text and a FontRenderingContext. Even it so, it still includes a lot of white space. I don’t know if there is a way to get totally tight bounding box around some text, without rolling your own pixel based methods. LineMetrics is awkward to use. To get a dummy Graphics for FontMetrics, you could try Component. getGraphics(). If you are inside a paintComponent method, you can cast the Graphics object to a Graphics2D. If there is no GUI (Graphic User Interface), you could create a dummy Graphics2D context like this:
This page is posted
Optional Replicator mirror
Your face IP:[184.108.40.206]
You are visitor number