java字体如何设置
设置 Java 字体的方法
使用 Font 类设置字体
Java 中可以通过 java.awt.Font 类来设置字体。以下是一个基本示例:
Font font = new Font("Arial", Font.BOLD, 14);
component.setFont(font);
参数说明:
- 第一个参数是字体名称(如 "Arial"、"Times New Roman")
- 第二个参数是字体样式(
Font.PLAIN、Font.BOLD、Font.ITALIC或其组合) - 第三个参数是字体大小
获取系统可用字体
如果需要查看系统中所有可用字体,可以使用 GraphicsEnvironment:
String[] fontNames = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
for (String name : fontNames) {
System.out.println(name);
}
在 Swing 组件中设置字体
对于 Swing 组件如 JLabel、JButton 等,可以直接调用 setFont() 方法:
JLabel label = new JLabel("Hello World");
label.setFont(new Font("Serif", Font.ITALIC, 16));
设置全局默认字体
如果需要为整个应用程序设置默认字体,可以在程序启动时调用:
UIManager.put("Label.font", new Font("Arial", Font.PLAIN, 12));
UIManager.put("Button.font", new Font("Arial", Font.PLAIN, 12));
// 其他组件类似
使用自定义字体文件
如果需要使用不在系统字体列表中的字体,可以从文件加载:
try {
Font customFont = Font.createFont(Font.TRUETYPE_FONT, new File("path/to/font.ttf"));
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
ge.registerFont(customFont);
Font sizedFont = customFont.deriveFont(12f);
component.setFont(sizedFont);
} catch (Exception e) {
e.printStackTrace();
}
在 JavaFX 中设置字体
如果使用 JavaFX,设置字体的方式略有不同:
Label label = new Label("JavaFX Text");
label.setFont(Font.font("Verdana", FontWeight.BOLD, 20));
注意事项
- 字体名称区分大小写
- 指定的字体必须在系统中可用,否则会使用默认字体
- 在不同平台上,可用字体可能有所不同
- 对于跨平台应用,建议指定多个备选字体







