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 |
http://mindprod.com/jgloss/fontmetrics.html | |
Optional Replicator mirror
|
J:\mindprod\jgloss\fontmetrics.html | |
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. | ||
Canadian
Mind
Products
IP:[65.110.21.43] Your face IP:[3.135.218.90] |
| |
Feedback |
You are visitor number | |