2011-08-04 75 views

回答

14

这是不正确的方式来提取字体。要阅读的字体一个具有通过PDF页面和下面摘录的字体迭代:

PDDocument doc = PDDocument.load("C:/mydoc3.pdf"); 
List<PDPage> pages = doc.getDocumentCatalog().getAllPages(); 
for(PDPage page:pages){ 
    Map<String,PDFont> pageFonts=page.getResources().getFonts(); 
} 
0
import org.apache.pdfbox.pdmodel.PDDocument; 
import org.apache.pdfbox.util.PDFTextStripper; 
public class pdf2box { 
    public static void main(String args[]) 
    { 
     try 
     { 
    PDDocument pddDocument=PDDocument.load("table2.pdf"); 
    PDFTextStripper textStripper=new PDFTextStripper(); 
    System.out.println(textStripper.getText(pddDocument)); 
    textStripper.getFonts(); 



    pddDocument.close(); 
     } 
     catch(Exception ex) 
     { 
     ex.printStackTrace(); 
     } 
    } 


} 
+2

这给了我一个空的地图,而Harpreet的答案给了我预期的输出 – bcoughlan

+0

PDFTextStripper在pdfBox 2.04中没有'getFonts()'方法。 –

相关问题