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
Please read the feedback from other visitors, or send your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.
Your face IP:[188.8.131.52]
You are visitor number|