2017-02-28 1 views
0

J'ai importé PDFBox-2.0.4.jar, fontbox-2.0.4.jar et commons-logging-1.1.1.jar en éclipse Képler. Le programme fonctionne sur win10. L'imprimante console beaucoup de ces avertissementspdfbox2.0.4 pdf convertir en chinois .png

org.apache.pdfbox.pdmodel.font.PDCIDFontType2 <init> 
WARNING: Using fallback font ArialUnicodeMS for CID-keyed TrueType font KaiTi_GB2312. 

Et je ne peux pas accéder au fichier d'image avec le contenu entier. Comment puis-je le réparer? Mon code est comme ceci:

public class PdfboxTest { 
    private static final String filePath = "xxx"; 
    private static final String outputFilePath = "xxx"; 

    public static void change(File inputFile, File outputFolder) throws IOException { 

     String totalFileName = inputFile.getName(); 
     String fileName = totalFileName.substring(0,totalFileName.lastIndexOf(".")); 
     PDDocument doc = null; 
     try { 
      doc = PDDocument.load(inputFile); 
      PDFRenderer pdfRenderer = new PDFRenderer(doc); 
      int pageCounter = 0; 
      for(PDPage page : doc.getPages()) 
      { 
       BufferedImage bim = pdfRenderer.renderImageWithDPI(pageCounter, 300, ImageType.RGB); 
       ImageIOUtil.writeImage(bim, outputFilePath + "\\" + fileName + (pageCounter++) +".png", 300); 
      } 
      doc.close(); 

     } finally { 
      if (doc != null) { 
       doc.close(); 
      } 
     } 
    } 
    public static void main(String[] args) { 
     File inputFile = new File(filePath); 
     File outputFolder = new File(outputFilePath); 
     if(!outputFolder.exists()){ 
      outputFolder.mkdirs(); 
     } 
     try { 
      change(inputFile, outputFolder); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

    } 
} 
+1

Essayez d'installer les polices manquantes, par ex. 'KaiTi_GB2312', ceci est à partir de fichiers PDF qui n'ont pas intégré leurs polices. Re 'Et je ne peux pas accéder au fichier d'image avec le contenu entier' que voulez-vous dire, est-ce un problème d'autorisation ou voulez-vous dire que le texte chinois est manquant dans l'image? –

+0

Nous vous remercions de votre suggestion d'édition et de vos conseils sur les questions. J'ai résoudre le problème en installant la police KaiTi_GB2312. Et maintenant je peux obtenir l'image avec tout le contenu en pdf. – dragic

Répondre

0

Comme on le voit dans les commentaires - la meilleure solution est d'installer la police manquante KaiTi_GB2312. Le message Using fallback font signifie que le PDF fait référence à la police mentionnée et ne l'a pas intégré, mais ne le trouve pas sur votre ordinateur, alors PDFBox a essayé une solution de secours, dans ce cas la police . Malheureusement, de telles solutions de secours ne sont pas toujours parfaites, ce qui explique pourquoi certains glyphes manquaient dans l'image rendue.