本文隶属于分类

编程语言

广告推荐

技术交流学习或者有任何问题欢迎加群

编程技术交流群 : 154514123 爱上编程      Java技术交流群 : 6128790  Java

标签:ioe   except   ref   default   adf   ren   外部字体   ram   try   

package chapter1;

import javax.swing.*;
import java.awt.*;
import java.io.IOException;
import java.io.InputStream;


public class FontDemo extends JPanel {
private static final long serialVersionUID = 1L;
public FontDemo(){
super();
}

public void paintComponent(Graphics g){
Graphics2D g2d = (Graphics2D) g.create();
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);

g2d.setPaint(Color.BLUE);
try {
g2d.setFont(loadFont());
} catch (IOException e) {
e.printStackTrace();
} catch (FontFormatException e) {
e.printStackTrace();
}
g2d.drawString("Font Demo",50,50);
g2d.dispose();
}
public Font loadFont() throws IOException, FontFormatException {

String fontfilename = "AMERSN.ttf";
InputStream is = this.getClass().getResourceAsStream(fontfilename);
Font actionJson = Font.createFont(Font.TRUETYPE_FONT,is);//返回一个指定字体类型和输入数据的font
Font actionJsonBase = actionJson.deriveFont(Font.BOLD,16);//通过复制此 Font 对象并应用新样式和大小,创建一个新 Font 对象。
return actionJsonBase;
}

public static void main(String args[]){
JFrame ui = new JFrame("Font Demo Graphics2D");
ui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ui.getContentPane().setLayout(new BorderLayout());
ui.getContentPane().add(new FontDemo(),BorderLayout.CENTER);
ui.setPreferredSize(new Dimension(380,380));//设置最好的大小,根据界面的调整大小跟着变化
ui.pack();
ui.setVisible(true);
}

}

Java——自定义外部字体文件

标签:ioe   except   ref   default   adf   ren   外部字体   ram   try   

原文:https://www.cnblogs.com/bigdream6/p/8365934.html

技术交流学习或者有任何问题欢迎加群

编程技术交流群 : 154514123 爱上编程      Java技术交流群 : 6128790  Java

广告推荐

讨论区