[ https://issues.apache.org/jira/browse/PDFBOX-4921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tilman Hausherr closed PDFBOX-4921. ----------------------------------- Resolution: Not A Bug > java.lang.OutOfMemoryError: Java heap space when convertif large pdf to tiff > ---------------------------------------------------------------------------- > > Key: PDFBOX-4921 > URL: https://issues.apache.org/jira/browse/PDFBOX-4921 > Project: PDFBox > Issue Type: Bug > Components: Rendering > Affects Versions: 2.0.20 > Environment: Java Version: 11 > Java Runtime Version: 11+28 > Java Home: OpenJDK11_x64 > Java Vendor: Oracle Corporation > Java Vendor URL: http://java.oracle.com/ > Reporter: Florent Juillet > Priority: Major > Attachments: After Orientation.pdf > > > Hello, > I am faced to this issue when i want to convert only the first page of a pdf > image to a tiff image file. > This is my java method : > {code:java} > private static ByteArrayOutputStream extractFirstPageAsTiff(File pdfsource) > throws IOException { > ByteArrayOutputStream out = new ByteArrayOutputStream(); > ImageOutputStream imageOut = new MemoryCacheImageOutputStream(out); > // Load the PDF > try (PDDocument pdf = PDDocument.load(pdfsource)) { > // Initialize PDF renderer > PDFRenderer ren = new PDFRenderer(pdf); > // Setup Image Writer > ImageWriter writer = ImageIO.getImageWritersBySuffix("tiff").next(); > writer.setOutput(imageOut); > // Setup Image Writer Parameters > ImageWriteParam params = writer.getDefaultWriteParam(); > params.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); > params.setCompressionType(COMPRESSION_TYPE_GROUP4FAX); > // Writer pages to the image writer > // capture the page image to file > BufferedImage src = ren.renderImageWithDPI(0, RESOLUTION); > int[] cmap = new int[] { 0xFF000000, 0xFFFFFFFF }; > BufferedImage src4BitColourDepth = ConvertUtil.convert4(src, cmap); > // Prepare the Image > Writer writer.prepareWriteSequence(null); > writer.writeToSequence(new IIOImage(src4BitColourDepth, null, null), > params); > // End Writer Sequence > writer.endWriteSequence(); > imageOut.close(); > } > return out; > } > {code} > > Produce this stack : > {noformat} > Exception in thread "main" java.lang.OutOfMemoryError: Java heap > spaceException in thread "main" java.lang.OutOfMemoryError: Java heap space > at java.desktop/java.awt.image.DataBufferInt.<init>(DataBufferInt.java:75) at > java.desktop/java.awt.image.Raster.createPackedRaster(Raster.java:467) at > java.desktop/java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:1032) > at java.desktop/java.awt.image.BufferedImage.<init>(BufferedImage.java:324) > at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:296) > at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:243) > at > org.apache.pdfbox.rendering.PDFRenderer.renderImageWithDPI(PDFRenderer.java:215) > at > sandbox.tess4j.DetectOrientation.extractFirstPageAsTiff(DetectOrientation.java:173) > {noformat} > In attachement the pdf document After Orientation.pdf > > Run with : > {noformat} > Java Version: 11 > Java Runtime Version: 11+28 > Java Home: OpenJDK11_x64 > Java Vendor: Oracle Corporation > Java Vendor URL: http://java.oracle.com/{noformat} > -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org For additional commands, e-mail: dev-h...@pdfbox.apache.org