2014-01-22 3 views
2

내 코드에서 IDENTITY_H 글꼴 encodinng를 사용하려고 해요 :이 iText : (자), UnsupportedEncodingException : 신원 H

BaseFont courier = BaseFont.createFont(BaseFont.COURIER, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); 
    Font font = new Font(courier, 12, Font.NORMAL); 

여기에 내가 오류입니다. 추가 항아리를 추가해야합니까, 아니면 정확히 무엇이 문제입니까? 당신의 createFont 방법의 첫 번째 매개 변수로 BaseFont.xxxx을 사용하는 경우에만 감사

ExceptionConverter: java.io.UnsupportedEncodingException: Identity-H 
at java.lang.StringCoding.encode(StringCoding.java:269) 
at java.lang.String.getBytes(String.java:947) 
at com.lowagie.text.pdf.PdfEncodings.convertToBytes(Unknown Source) 
at com.lowagie.text.pdf.Type1Font.<init>(Unknown Source) 
at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source) 
at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source) 
at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source) 
at fr.srd.core.TextFileToPDF.main(TextFileToPDF.java:35) 
+0

아니고 단지의 문제 .. 내가 아래에 언급 된 진짜 문제 – Naren

답변

2

당신은 인코딩의 일부를 적용 할 수 있습니다. CP1250, CP1252, CP1257, WINANSI, MACROMAN과 유사합니다. 당신은 AFM 또는 PFM 파일에 의해 참조 타입 1 글꼴을 사용하여 새로운 사용자 정의 글꼴

BaseFont baseFont=BaseFont.createFont("C://Windows//Fonts//Arial.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED); 
    Font font=new Font(baseFont, 10); 

를 만드는 경우

하고, 트루 타입 글꼴 만 유 IDENTITY_H 또는 IDENTITY_V를 사용할 수 있습니다. 기본적으로 그들은 인코딩 스타일입니다.

아래에 몇 가지 참조 정보가 있습니다.

http://api.itextpdf.com/itext/com/itextpdf/text/pdf/BaseFont.html#createFont%28java.lang.String,%20java.lang.String,%20boolean%29

http://api.itextpdf.com/itext/com/itextpdf/text/pdf/BaseFont.html#IDENTITY_H