2012-05-20 6 views
1

2x2 테이블 셀이있는 PDF를 만드는 웹 응용 프로그램에서 다음 PDF 내보내기 코드가 있습니다. iText 및 htmlWorker를 사용하는 그리스 문자 및 이미지

public static void myexport2() throws IOException{ 
    try { 
     com.itextpdf.text.Document document = new com.itextpdf.text.Document(PageSize.A4); 
     PdfWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream("C://Users/gkarapatis/Desktop/testpdf.pdf")); 
     document.open(); 
     document.addAuthor("Author of the Doc"); 
     document.addCreator("Creator of the Doc"); 
     document.addSubject("Subject of the Doc"); 
     document.addCreationDate(); 
     document.addTitle("This is the title"); 
     HTMLWorker htmlWorker = new HTMLWorker(document); 
     String str="<table height=300, border=\"1\"><tr><td></td><td></td></tr><tr><td>1</td><td></td></tr></table>"  

     htmlWorker.parse(new StringReader(str)); 
     document.close(); 
    } catch(DocumentException e) { 
     e.printStackTrace(); 
    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } catch (UnsupportedEncodingException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 

나는 그것이 수출 PDF 파일에 나타나지 않습니다 HTML 셀에 그리스어 문자를 추가하고있다. 내 내보내기에 유니 코드를 추가하려면 어떻게해야합니까? HTMLWorker의 문제입니까?

내가 뭔가를 나에게 예외를 던지는

img src=\"file://C:/Webapp/dsp/public/images/dsp1.jpg\" width=\"80\" height=\"81\" alt=\"\" border=\"0\" 

를 추가 셀에 이미지를 추가하려합니다. 내가 플레이 프레임 워크와는 던져 예외를 사용하고 것은 "있는 InvocationTargetException가 발생 : 널 (null)"입니다

+1

* 어떤 예외가 발생합니까? – Makoto

+0

사용중인 글꼴 문제 일 수 있습니까? 그리스 문자가있는 글꼴을 지정하려 했습니까? – nplatis

+0

나는 플레이 프레임 워크를 사용하고 예외는 InvocationTargetException이 발생했습니다 : null – user1392203

답변

0

을 지금까지 당신이 더 테이블 PdfPTable.Creating 세포는 세포에 의해 세포를 추가하는 것처럼 간단합니다 사용하여 그것을 할 만드는 (각 셀은 PdfPCell) 부탁해 더 유니 코드가 특정 글꼴이 그것을 사용 발견하는 경우가 Arialuni.ttf.Then를 사용하여 시도로 당신이 그것을 포함하는 그리스어 character.As을 표시 한 두 문제

  1. 사용하는 특정 글꼴에 관한.
  2. 또한 이미지를 셀에 추가하는 것은 PdfPCell의 add 메소드를 사용하여 간단하게 구현할 수 있습니다. BaseFont 클래스를 사용하여 글꼴을 만들어야합니다. (각 부분을 잘 이해하기 위해 Google에서 추출해야합니다.) 그리스 문자 때문에 코드 포인트 (유니 코드)로 표현 된 문자 모양을 찾을 수 없습니다.

예상되는 출력물을 이미지로 첨부 할 수 있다면 약간의 통찰력을 줄 수 있습니다.