导出大文档
文档处理的最后一步为导出到文件。根据统计数据,最受欢迎的导出目标格式是 PDF 格式。您可以导出单页文档或者包含数百页的文档。但在需要保存大量信息的情况下同时导出不太方便。同时导出期间要捕捉和处理错误相当复杂,即使是平行处理,处理速度也可能较为缓慢。
对于将大文档导出为 PDF格式,建议使用 ExportFileWriter 对象,它可扩展标准导出功能。现在,识别的文档不仅可以同时保存为 PDF格式,而且可分部分进行保存。通过使用方法 AddPage 和 AddPages,您可以设置保存部分的大小,从而使得导出进程更容易控制。
新导出功能的主要优势包含:
- 导出大文档时速度大幅提升
- 需要更少 RAM 资源
- 方便错误处理,而且不会丢失已导出的数据。在同时导出的情况下,一个错误就可能导致整个导出阶段失败。如果处理许多页面,重启导出会花费大量时间。而如果使用新功能,则无需停止处理。可以在小部分检测错误并对其进行处理。因此,即使处理过程中发生错误,导出速度也不会受到较大影响。
最佳处理速度建议
- 包含 50 页或更多页的文档适用新的导出模式。500 页或更多页的文档建议使用 ExportFileWriter。
- 若要获得最佳速度,请选择 Batch Processor(请参见使用 Batch Processor 进行处理)。
- 一次导出固定数量的页面。您需要做一些实验来挑选适合文档的最佳页数。ABBYY 内部测试发现,30 页的部分大小最适用于通用文档。
速度测试结果
速度测试结果如图。
如图所示,使用新的导出功能处理大型文档比用标准导出进行处理快大约 4 倍。
测试机器的处理器是 Intel® Core™ i5-3450 (3.10 GHz,4个物理内核)8 GB 的 RAM,同时运行的进程数量为 4 个。会话期间,导出文档一次保存 30 页。
使用 Batch Processor 进行会话导出
另请参阅下方的会话导出的示例实现。
C++ 代码
C# 代码
另请参阅
17.09.2024 15:14:41