내 시스템의 TTF 파일에서 java.awt.Font 인스턴스를 만들려고하는데 일부 글꼴 만 오류없이로드 할 수 있습니다. 아래 코드는 온라인에서 찾은 일부 테스트 코드입니다. 내 시스템에서 실행할 때 성공적으로 (예 : Arial.ttf) 285 개의 글꼴을로드 할 수 있지만 83 개의 글꼴 (예 : AmericanTypewriter.ttf)에서는 실패합니다.Java에서 TTF 파일의 일부 트루 타입 글꼴로드 중 FontFormatException : 글꼴 이름을 찾을 수 없음
모든 오류의 원인은없는 FontFormatException: Font name not found
입니다.
java.awt.Font 및 형식 호환성에 대해 알려진 문제점이 있습니까? 나는 많은 인터넷 검색 후에 아무것도 찾을 수 없습니다.
public static void main(String[] args) {
String rootPath = "/Library/Fonts";
File root = new File(rootPath);
if (root.canRead()) {
String[] fontFiles = root.list();
Font font = null;
for (String fontFile : fontFiles) {
try {
System.out.println(fontFile);
font = Font.createFont(Font.TRUETYPE_FONT, new File(root + "/" + fontFile));
System.out.println(font);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
내 환경은 Java 7, OS X Mavericks (10.9.1)입니다.
java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)
여기의 도움을 주시면 감사하겠습니다.
비슷한 문제가 있었지만 글꼴이 Java6 (Eclipse)에서는 제대로로드되었지만 Java7 (터미널)에서는 제대로로드되지 않았습니다. Java6과 7 사이의 구현에는 차이가있는 것 같습니다 ... – britzl