2013-04-09 19 views
0

我是Java編程的初學者,在這裏也是在stackoverflow。目前我正嘗試使用com.sun.pdfview庫打印PDF文件。它經常工作,但也有一些文件,我收到以下錯誤:使用Sun PDFRenderer進行Java打印編碼

java.lang.IllegalArgumentException: Unknown encoding: SymbolSetEncoding 
    at com.sun.pdfview.font.PDFFontEncoding.getBaseEncoding(PDFFontEncoding.java:199) 
    at com.sun.pdfview.font.PDFFontEncoding.<init>(PDFFontEncoding.java:78) 
    at com.sun.pdfview.font.PDFFont.getFont(PDFFont.java:133) 
    at com.sun.pdfview.PDFParser.getFontFrom(PDFParser.java:1166) 
    at com.sun.pdfview.PDFParser.iterate(PDFParser.java:719) 
    at com.sun.pdfview.BaseWatchable.run(BaseWatchable.java:101) 
    at java.lang.Thread.run(Thread.java:722) 

我要告訴你,這些文件都寫在一個白人語言(格魯吉亞),典型的字體是Sylfaen。

錯誤發生在下面的代碼:

   PDFRenderer pgs = new PDFRenderer(page, g2, imgbounds, null,null); 
      try { 
       page.waitForFinish(); 
       pgs.run(); 

我相信,這些文件需要使用不同的編碼或我需要指定的字體,可惜我找不到了腳踝,我可以拿外觀或更改設置。

謝謝

馬丁

回答

0

PDFRenderer僅支持PDF規範的一個有限的子集。