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

时间:2018-01-10 11:46:28

标签: java pdf pdftron

我们正在使用PdfTronPDF转换为XOD,以便可以在XPS查看器中查看它。 PDFTron部署在PCF上并用作服务。

遇到一个案例,当一个已经执行了OCR的简单扫描的pdf文件(5mb)在将其转换为XOD时占用了大量的RAM(5.5GB)。 我们使用以下配置在java中转换它:

    XODOutputOptions options = new XODOutputOptions();
    options.setDPI(600);        
    options.setPreferJPG(true);
    options.setFlattenContent(0);
    options.setRenderPages(true);

是否有任何设置或内存管理技术可以解决此问题?

1 个答案:

答案 0 :(得分:0)

PDF很可能每页包含一个图像,图像可能正在使用JBIG2压缩,特别是如果它是单色/灰色。

此外,你的DPI相当高,所以如果页面的物理尺寸很大(CAD图纸通常超过30“宽/高),那么在转换过程中可能需要非常大的图像存储在内存中。

例如,如果PDF页面为30“x30”,那么在600DPI时,内存中可能只有一个324MP图像。

您可以通过将SetDPI降低到更小的值来验证,例如96,以验证这是发生了什么。