我们正在使用 PdfTron
将 PDF
转换为 XOD
,以便可以在 XPS 查看器中查看。 PDFTron
部署在 PCF
上并作为服务使用。
遇到这样的情况:一个简单的扫描 pdf 文件(5mb)(已对其执行 OCR)在将其转换为 XOD 时占用大量 RAM(5.5GB)。 我们使用以下配置将其转换为java:
XODOutputOptions options = new XODOutputOptions();
options.setDPI(600);
options.setPreferJPG(true);
options.setFlattenContent(0);
options.setRenderPages(true);
是否有任何设置或内存管理技术可以解决此问题?
最佳答案
PDF 很可能每页包含一个图像,并且该图像可能使用 JBIG2 压缩,尤其是单色/灰色时。
此外,您的 DPI 相当高,因此如果页面的物理尺寸很大(CAD 绘图通常超过 30 英寸宽/高),则在转换过程中可能需要在内存中存储非常大的图像。
例如,如果 PDF 页面为 30"x30",则在 600DPI 下,内存中可能会暂时存在单个 324MP 图像。
您可以通过将 SetDPI 降低到较小的值(例如 96)来验证是否发生了这种情况。
关于java - PDFTron PDF 2 XOD 转换中的高内存利用率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48186779/