以下代码与JDK5编译良好,但对于JDK7,它会抛出编译错误
“sun.font.FontDesignMetrics”是私有的
FontUIResource fontUiResource = (FontUIResource) MyUI.get("MainTitle");
if (fontUiResource != null) {
FontDesignMetrics fontMetrics = new FontDesignMetrics(fontUiResource);
我正在使用Intellij 12,以防这是与问题相关的信息。
答案 0 :(得分:0)
似乎构造函数在jdk6中是私有的。构造函数says的JavaDoc:"它是私有的,用于启用缓存 - 调用getMetrics()而不是#34;。当使用私有不受支持的API时,这种变化当然总是风险之一。
答案 1 :(得分:0)
Graphics graphics = image.getGraphics();
FontMetrics metrics = graphics.getFontMetrics(font);
尝试这个。