FullStack/21. Java

Pdf 한글 출력

nakanara 2012. 5. 18. 10:41
반응형


Springframework에서 AbstractPdfView를 상속받아서 한글을 출력했더니 깨졌다.


블로그를 검색하고 해도 안되더니 5버전때 약간 바뀌었군.


한글 테스트를 해볼겸 해서 나의 윈도우에 있는 Font를 모두 출력해보았다.


BaseFont.IDENTITY_H 해당 encoding로 해야함.


int i = FontFactory.registerDirectory("C:\\Windows\\Fonts\\");

System.out.println("Result = " + i);

Set<String> set= FontFactory.getRegisteredFonts();

Iterator<String> it = set.iterator();

document.setPageSize(PageSize.A4);

Font font;

String fontname="";

String font_arr[] = new String[]{

//BaseFont.CP1250, BaseFont.CP1252, BaseFont.CP1257, 

BaseFont.IDENTITY_H 

//BaseFont.IDENTITY_V , 

//BaseFont.WINANSI

};

Chapter chapter = new Chapter(new Paragraph("Hello Pdf 가나다라마바사!!!!."), 1);

while(it.hasNext()){

fontname = it.next();

for(i=0; i < font_arr.length; i++) {

try {

System.out.println(fontname + "::" + font_arr[i]);

font = FontFactory.getFont(fontname, font_arr[i]);

font.setSize(10);

chapter.add(new Paragraph("FontName=" + fontname + " Style=" + font_arr[i] + "Hello Pdf!!! 한글!@#$11", font));

}catch (Exception e) {

e.printStackTrace();

}

}

}

document.add(chapter);

document.close();



pom.xml 해당 itext dependency


<!-- Pdf , license 살펴보기 -->

   <dependency>

      <groupId>com.lowagie</groupId>

      <artifactId>itext</artifactId>

      <version>2.1.7</version>

    </dependency>




참고 사이트

http://api.itextpdf.com/itext/


반응형