2013-05-20 44 views
4

我想利用iText創建一個PDF但我上線得到一個錯誤:創建使用飛碟,渲染問題從HTML PDF

ItextRenderer renderer = new ITextRenderer(); 

的錯誤是這樣的:

05-20 12:00:48.468: E/AndroidRuntime(6121): java.lang.VerifyError: org/xhtmlrenderer/pdf/ITextOutputDevice 

它創建的文件,但該文件是一個bug(大小爲0KB,它不是打開的)

private void HTMLtoPDF(){ 
    try{ 
     String outputFile = "sdcard/firstdoc.pdf"; 
     OutputStream os = new FileOutputStream(outputFile); 

     ITextRenderer renderer = new ITextRenderer(); 
     renderer.setDocumentFromString(getHtmlBuffer().toString()); 
     renderer.layout(); 
     renderer.createPDF(os); 
     renderer.finishPDF(); 
     os.close(); 
     }catch (Exception e) { 
     e.printStackTrace(); 
     } 
} 
private StringBuffer getHtmlBuffer() { 
    StringBuffer buff = new StringBuffer(); 
    buff.append("<html xmlns='http://www.w3.org/1999/xhtml'>"); 
    buff.append("<body>"); 
    buff.append("<h2 style='color: #353535;font-size: 16px;margin: 0px;padding: 20px 0px;font-weight: bold;'>Test</h2>"); 
    buff.append("<div id='news-details' class='news-details'>"); 
    buff.append("<div class='news-details-data'>"); 
    buff.append("some japanes charactors"); 
    buff.append("</div></div>"); 
    buff.append("</body></html>"); 
    return buff; 
} 
+0

我得到相同的錯誤。任何想法如何使它在Android上工作? – satyadeepk

回答

1

我也在尋找一個Android的HTML到PDF轉換器,並看着飛碟。我遇到了同樣的問題,並注意到飛碟不是一個Android庫,而是一個圖書館。它使用Android不可用的Java類(例如:java.awt。*),因此該jar無法在Android設備上運行。

1

格式的HTML正確,我也有同樣的問題.. itext不接受無格式的HTML字符串,您的PDF受損..

+0

我確實改變了它以使事情變得更容易,但它仍然給我帶來了同樣的錯誤。 – Tsunaze