我们十分高兴的宣布具有新功能与改进的Aspose.Pdf for Java 17.12新版本已经可以下载了。 如果您计划将现有API升级到最新版本,我们建议您查阅Aspose.Pdf for Java 17.12发行说明以了解公共API更改和改进的概述。另外,以下是文本提取和文档操作功能方面的一些重大改进和修复。
实现了文本提取错误报告功能
在调查PDF文档使用PDF Type 3字体的场景时,观察到TextAbsorber类没有正确检索文本。 原因是在PDF中使用的字体包含不同的编码,并且使用Adobe Reader本身不可能从这些文档中提取文本。 我们意识到在API中实现功能的必要性,可以报告文档中的这种错误。我们很高兴地通知您,已经为TextAbsorber和TextFragmentAbsorber类实现了文本提取错误报告,已经在Aspose.Pdf for Java 17.12版本中提供。以下代码片段可用于从PDF文档中提取文本时检测错误:
Document pdf = new Document("test.pdf");
TextAbsorber absorber = new TextAbsorber();
absorber.getTextSearchOptions().setLogTextExtractionErrors(true);
pdf.getPages().accept(absorber);
if (absorber.hasErrors()) {
// Information about found errors and locations is stored in
// Errors collection.
for (TextExtractionError error : absorber.getErrors()) {
// TextExtractionError object contains information about the
// text extraction error found during processing concrete
// text fragment.
System.out.println(error);
System.out.println(String.format("Extracted text: '{0}'",
error.getExtractedText()));
}
}
使用增量更新将PDF文档保存到Stream对象中
据观察,当您从二进制文件加载PDF文档时,操作它(即添加一些注释)并将其保存为不同的二进制文件 – PDF文档的内容被完全更改。 为了避免这样的问题,我们在Document类中实现了一个额外的方法,例如saveIncrementally()。现在您能够使用增量更新将文档保存到Stream对象中。
其它修复
自始至终建议使用我们的API的最新版本,因为它们包括与早期发布的版本中报告的问题相关的最新功能/改进和修复。因此,请下载最新版本的Aspose.Pdf for Java 17.12。
- Aspose.Pdf for Java产品主页
- 下载Aspose.Pdf for Java
- Aspose.Pdf系列产品论坛–发布您的技术问题和疑问,或者您在运行Aspose.Pdf API时遇到的任何其他问题。
- Aspose.Pdf for Java在线文档–帮助文档和API参考文档。
- 启动博客订阅–不要限制自己,你可以通过订阅Aspose.Pdf博客让自己更新Aspose.Pdf API,新功能,修复和其他API相关主题的最新消息。