提问者:小点点

java.lang.OutOfMemoryError:在apache pdfbox中读取图像时Java堆空间


我正在使用ApachePdfboxapi创建一个pdf。尝试读取图像时,以下代码出现堆空间问题:

    PDXObjectImage ximage = null;

    InputStream is1 = new ClassPathResource(appProp.getProperty("fon1")).getInputStream();
    InputStream is2 = new ClassPathResource(appProp.getProperty("font2")).getInputStream();

    font = PDTrueTypeFont.loadTTF(doc,is1);
    font1 = PDTrueTypeFont.loadTTF(doc,is2);
    BufferedImage awtImage = ImageIO.read(new ClassPathResource(appProp.getProperty("Logo")).getInputStream());
    ximage = new PDPixelMap(doc, awtImage);
    float scale = 0.009f;

堆栈跟踪:

java.lang.OutOfMemoryError:java堆空间],根本原因

java.lang.OutOfMemory错误:

执行ImageIO时发生异常。阅读,但不是每次都阅读。它是随机发生的。在本地计算机中运行代码时,这一点也很好,但在开发区域中失败了。

有人能帮我解决这个问题吗。

谢谢,


共1个答案

匿名用户

在使用较小尺寸的图像后,我能够解决这个问题。