如何在Java中查找文本字符串的真实可见大小

Mar*_*ide 5 java fonts typography

是否有可能在Java中找到字符串的真正边界框?即最小的矩形,其中包括实际绘制的像素?

我查看了FontMetrics和LineMetrics,虽然它们允许传入字符串,但它们似乎没有考虑字符本身,呃"a","p"和"P"都返回相同的高度.

具体来说,它们似乎包括字符串高度的下降,即使实际字符没有下降到基线以下.我可以访问哪些其他指标返回真正的边界框?

或者,有什么方法可以判断某个角色是否有下行器?

dav*_*veb 4

请参阅本关于测量文本的教程,该教程重点关注FontMetrics

对于更高级的测量(获取特定字符串的边界框),TextLayout是您的朋友,如此处所述

除了有关 TextLayout 的教程之外,javadoc 还包含其使用示例。