My code:
FileInputStream pdfFile = new FileInputStream("C:/work/pdf2tiff/test.PDF");
PDDocument pdDocument = PDDocument.load(pdfFile, true);
PDDocumentCatalog catalog = pdDocument.getDocumentCatalog();
List pages = catalog.getAllPages();
if (pages != null && pages.size() > 0) {
for (int i = 0; i < pages.size(); i++) {
PDPage page = (PDPage) pages.get(i);
Map fonts = page.getResources().getFonts();
System.out.println("fonts=" + fonts);
I got output:
fonts={F0=org.apache.pdfbox.pdmodel.font.PDType1Font@8aaed5,
F4=org.apache.pdfbox.pdmodel.font.PDType0Font@dc4414, F2=org.apache.pdfbox.pdmodel.font.PDType0Font@f98ce0, F6=org.apache.pdfbox.pdmodel.font.PDTrueTypeFont@18fcdce}
Why the fonts map's key is F0/F1/F2/F6? What these mean? Should I iterate all pdf pages get all fonts?
Thanks for your answer.