我正在使用java.awt.Font,我怎样才能发现系统上是否安装了定义的字体?
具体来说,我有
Font font = new Font("FooBar", 0, 14);
Run Code Online (Sandbox Code Playgroud)
我想发现"font"是否是系统上的有效字体,如果不可用,则默认为更通用的字体.
尝试在循环中检查您的字体,如下所示:
public class SO2 {
public static void main(String args[]) {
GraphicsEnvironment g= null;
g=GraphicsEnvironment.getLocalGraphicsEnvironment();
String []fonts=g.getAvailableFontFamilyNames();
for (int i = 0; i < fonts.length; i++) {
System.out.println(fonts[i]);
if(fonts[i].equals("YOUR FONT")){
System.out.println("Found!");
}
}
}}
Run Code Online (Sandbox Code Playgroud)
它应输出"Found!" 如果它找到你的字体.
祝好运!