java.lang.OutOfMemoryError: Java heap space while reading image in apache pdfbox
java.lang.OutOfMemoryError: Java heap space while reading image in apache pdfbox
我正在使用 Apache Pdfbox 创建一个 pdf api。在尝试读取图像时,在以下代码中出现堆 Space 问题:
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 heap space] with root cause
java.lang.OutOfMemoryError: Java heap space at
java.awt.image.DataBufferByte.(DataBufferByte.java:92) at
java.awt.image.ComponentSampleModel.createDataBuffer(ComponentSampleModel.java:445)
at java.awt.image.Raster.createWritableRaster(Raster.java:941) at
javax.imageio.ImageTypeSpecifier.createBufferedImage(ImageTypeSpecifier.java:1074)
at javax.imageio.ImageReader.getDestination(ImageReader.java:2892) at
com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:1090)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:1058)
at javax.imageio.ImageIO.read(ImageIO.java:1462)
at javax.imageio.ImageIO.read(ImageIO.java:1357)
执行 ImageIO.read 时出现异常,但并非每次都如此。它是随机发生的。 运行 本地计算机中的代码同样工作正常,但在开发区域中失败。
谁能帮我解决这个问题。
谢谢,
我在使用较小尺寸的图片后解决了这个问题。
我正在使用 Apache Pdfbox 创建一个 pdf api。在尝试读取图像时,在以下代码中出现堆 Space 问题:
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 heap space] with root cause
java.lang.OutOfMemoryError: Java heap space at java.awt.image.DataBufferByte.(DataBufferByte.java:92) at java.awt.image.ComponentSampleModel.createDataBuffer(ComponentSampleModel.java:445) at java.awt.image.Raster.createWritableRaster(Raster.java:941) at javax.imageio.ImageTypeSpecifier.createBufferedImage(ImageTypeSpecifier.java:1074) at javax.imageio.ImageReader.getDestination(ImageReader.java:2892) at com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:1090)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:1058)
at javax.imageio.ImageIO.read(ImageIO.java:1462)
at javax.imageio.ImageIO.read(ImageIO.java:1357)
执行 ImageIO.read 时出现异常,但并非每次都如此。它是随机发生的。 运行 本地计算机中的代码同样工作正常,但在开发区域中失败。
谁能帮我解决这个问题。
谢谢,
我在使用较小尺寸的图片后解决了这个问题。