在Java Graphics2D中获取字符串边界的问题

时间:2011-05-11 23:20:01

标签: java graphics

我想画一个字符串。首先,我使用getStringBounds获取字符串边界: getStringBounds(String,FontRenderContext)

然后,我使用DrawString绘制字符串。我不知道getStringBounds(“x”和“y”)的返回值是什么。 有人可以帮帮我吗?

谢谢, 沙迪。

2 个答案:

答案 0 :(得分:3)

  

例如,对于一个字符串,它返回:X = 0,Y = -11,width = 20,length = 17。 x和y是什么意思?

使用大多数Graphics方法,您可以指定绘图的顶部/左侧位置。例如

g.drawImage(image, 0, 0, null);

但是,在绘制文本时,请指定图形的底部/左侧位置。所以在你的情况下你会使用:

g.drawString("string", 0, 11);

一般来说,我猜你会在drawString()方法中使用Y值的绝对值。

答案 1 :(得分:1)

找到here

  

返回指定FontRenderContext中指定String的边界。边界用于布局String。

Parameters:
   str - the specified String
   frc - the specified FontRenderContext
Returns:
   a Rectangle2D that is the bounding box of the specified String in the specified FontRenderContext.