PDFTron PDF 2 XOD 转换中的高内存利用率

High memory utilization in PDFTron PDF 2 XOD conversion

我们正在使用 PdfTronPDF 转换为 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 压缩,特别是如果它是 mono/gray 颜色。

此外,您的 DPI 相当高,因此如果页面的物理尺寸很大(CAD 图纸通常超过 30 英寸 wide/high),那么这可能需要在内存中存储非常大的图像转换。

例如,如果 PDF 页面为 30"x30",则在 600DPI 时,内存中可能会瞬间出现单个 324MP 图像。

您可以通过将 SetDPI 降低到更小的值(例如 96)来验证是否发生了这种情况。