본문 바로가기
FullStack/21. Java

Pdf 한글 출력

by nakanara 2012. 5. 18.
반응형


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/


반응형