如何在不使用 Graphics 的情况下获取 FontMetrics ?我想在构造函数中获取 FontMetrics,现在我这样做:
BufferedImage bi = new BufferedImage(5, 5, BufferedImage.TYPE_INT_RGB);
FontMetrics fm = bi.getGraphics().getFontMetrics(font);
int width = fm.stringWidth(pattern);
int height = fm.getHeight();
最佳答案
不,您不一定需要获取/使用图形对象:
Font font = new Font("Helvetica",Font.PLAIN,12);
Canvas c = new Canvas();
FontMetrics fm = c.getFontMetrics(font);
如果您现在调用 c.getGraphics()
,它将返回 null。另一方面, Canvas 解决方案也适用于 headless mode .
关于Java - 没有图形的 FontMetrics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2843601/