我正在使用以下代码通过Apache PDF Box读取pdf文件:
PDDocument doc = PDDocument.load(file);
PDDocumentCatalog catalog = doc.getDocumentCatalog();
PDPage page = (PDPage) catalog.getPages().get(0);
doc.addPage(page);
PDFTextStripperByArea stripper = new PDFTextStripperByArea();
stripper.setSortByPosition(false);
PDFTextStripper tStripper = new PDFTextStripper();
String pdfFileInText = tStripper.getText(doc);
String pdfText[] = pdfFileInText.split(System.lineSeparator());
System.out.println(pdfFileInText);
doc.close();
我成功使用此代码阅读了许多PDF。但是,使用我应该阅读的最新pdf文件,它不会提取正确的文本数据并给出以下警告。
org.apache.pdfbox.pdmodel.font.PDType0字体转Unicode 警告:字体1E23f0MonotypeSansDuospaceWT
中的CID + Num(数字)没有Unicode映射其中“ Num”是整数。有谁知道如何解决此问题,以便我可以毫无困难地将此pdf阅读成unicode文本? pdf为“ Monotype Sans Duospace WT”字体。非常感谢您的帮助。