2013-04-29 1 views
1

akshar.ttf 파일을 다운로드했으며이를 내 Java 프로젝트에 추가하고 싶습니다. 나는 온라인으로 검색하여 다음과 같은 방법을 시도했지만 지금까지 아무 일도하지 않았다.자바 프로젝트에 .ttf 파일을 추가하십시오.

1 시도해보십시오

Font ttfBase = null; 
     Font ttfReal = null; 
     try { 
      InputStream myStream = new BufferedInputStream(new FileInputStream("akshar.TTF")); 
      ttfBase = Font.createFont(Font.TRUETYPE_FONT, myStream); 
      ttfReal = ttfBase.deriveFont(Font.PLAIN, 24); 
     } catch (Exception ex) { 
      ex.printStackTrace(); 
      System.err.println("akshar font not loaded."); 
     } 

2를보십시오 :

Font font = new Font("akshar",Font.PLAIN,15); 

을 나는 다음과 같은 장소에서 akshar.ttf 파일을 가지고있다 -

  1. 자바/JRE/lib 디렉토리/글꼴
  2. 내 프로젝트의 bin 폴더
  3. 내 프로젝트의 src 폴더

나는 자바를 처음 접하고 온라인에서 다양한 링크를 사용하여이 모든 것을 시도했다. 제발 내가 어디가 잘못 됐는지 도와주세요.

+0

'src' 폴더에 있으면 자동으로'bin' 폴더에 들어가야합니다. 안 그래야합니까? 'Font'는'File'보다는'URL'에 의해 접근 될 필요가 있습니다. [임베디드 리소스 정보. URL을 얻는 방법은 [page] (http://stackoverflow.com/tags/embedded-resource/info)를 참조하십시오. –

+0

은 귀하의 수표 클래스와 동일한 폴더에 있습니까? 세 번째 시도는 그 때 작동합니다. 최소한'InputStream' 객체는 null이 아니어야합니다. –

+0

글꼴은 응용 프로그램의 일부이므로 (jar로 묶을 수 있음) File을 사용하지 말고 리소스 : getClass(). getResourceAsStream ("/ akshar.TTF")'를 사용하십시오. * 대소 문자를 구별하는 마음 *! –

답변

5

당신은 아래의 그래픽 환경을 생성 글꼴을 등록 할 수 있습니다 :

try { 
    GraphicsEnvironment ge = 
    GraphicsEnvironment.getLocalGraphicsEnvironment(); 
ge.registerFont(Font.createFont(Font.TRUETYPE_FONT, new File("akshar.TTF")); 
} catch (IOException|FontFormatException e) { 
//Handle exception 
} 

Java tutorial를 참조하십시오.

+0

좋은 지적. [이 예제] (http://stackoverflow.com/questions/6965038/getting-fonts-sizes-bold-etc/6965149#6965149) 및 [이 예제] (http://stackoverflow.com/a/8365030)를 참조하십시오./418556). –

+0

@Noob UnChained :'java.io.IOException : akshar.ttf를 읽을 수 없습니다. \t java.awt.Font.createFont (알 수없는 소스)에서 ' – newbee

+0

의 경로와 파일 이름을 확인하십시오. ttf 파일이 올바른지 확인하십시오! – NINCOMPOOP

-1

assests 폴더에 ttf 넣기 :)