Java 는 외부 글꼴 즉 사용자 정의 글꼴 파일 을 참조 합 니 다.

2092 단어 프로젝트 개발
때때로 우 리 는 프로그램 에서 자바 글꼴 을 사용 하지만 모든 글꼴 시스템 에 있 는 것 은 아니다. 우 리 는 외부 사용자 정의 글꼴 을 사용 할 수 있다. 그러면 프로그램 이전 배치 에서 작업 이 적 을 것 이다. 최근 한 항목 에서 사용자 정의 글꼴 을 사용 하여 정리 하고 기억 할 수 있다.
package cy.util;
import java.awt.Font;
import java.awt.FontFormatException;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

public class CyFont {
	private Font definedFont = null; 
	
	public Font getDefinedFont(int ft,float fs) {
		String fontUrl="";
		switch (ft) {
		case 1:
			fontUrl="/opt/hwxk.ttf";//    
			break;
		case 2:
			fontUrl="/opt/hwkt.ttf";//    
			break;
		default:
			String fonturllocal="/usr/share/fonts/wqy-zenhei/wqy-zenhei.ttc";
			if(!new File(fonturllocal).exists()){
				fontUrl="/usr/share/fonts/truetype/wqy/wqy-zenhei.ttc";
			}else{
				fontUrl=fonturllocal;
			}
			break;
		}
        if (definedFont == null) {  
            InputStream is = null;  
            BufferedInputStream bis = null;  
            try {  
                is =new FileInputStream(new File(fontUrl));
                bis = new BufferedInputStream(is);  
                definedFont = Font.createFont(Font.TRUETYPE_FONT, is);
                //      ,float 
               definedFont = definedFont.deriveFont(fs);
            } catch (FontFormatException e) {  
                e.printStackTrace();  
            } catch (IOException e) {  
                e.printStackTrace();  
            } finally { 
               try {  
                    if (null != bis) {  
                        bis.close();  
                    }  
                    if (null != is) {  
                        is.close();  
                    }  
                } catch (IOException e) {  
                    e.printStackTrace();  
                }
            }  
        }  
        return definedFont;  
    }  
	
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		CyFont cf=new CyFont();
		cf.getDefinedFont(1, 50.0);
		
	}

}

좋은 웹페이지 즐겨찾기