Java Graphics:从Font构造FontMetrics,没有Graphics2D
已知
给定FontMetrics
FontMetrics
有一个受保护的构造函数。
题:
给定一个Font
对象,是否有一种方法可以构建FontMetrics
对象而无需通过Graphics2D.setFont
, Graphics2D.getFontMetric()
?
上下文
我正在使用像渲染算法这样的TeX。 我需要计算* .pfb文件中各种字符的边界框等。 我可以从* .pfb文件构造一个Font对象。 我需要一个FontMetrics
对象来获得上升,下降,宽度。 对于我来说,构建一个未使用的中间Graphics对象只是为了得到FontMetrics
似乎非常难看。
给定一个
Font
对象,是否有一种方法可以构建FontMetrics
对象而无需通过Graphics2D.setFont
,Graphics2D.getFontMetric()
?
有关获取Graphics
实例的替代方法,请参阅BufferedImage.createGraphics()
或getGraphics()
。
或完全不使用图形对象:
Font font = new Font("Helvetica",Font.PLAIN,12); Canvas c = new Canvas(); FontMetrics fm = c.getFontMetrics(font);
如果现在调用c.getGraphics()
,它将返回null。 这个(canvas)也可以在无头模式下工作。