I "cropped" barcode (
https://drive.google.com/file/d/0B8GFWmLzuj1QV0ZNZ3VyaEkxc1E/view?usp=docslist_api)
from a PDF file using PDRectangle.
...
    PDRectangle cropbBox = page.getCropBox();
    page.setCropBox(new PDRectangle((float)51.871-10, (float)18.876,
(float)293.25+20, (float)36.75));
    doc.save("/dirXYZ/testcrop.pdf");
    doc.close();
...
But in line 'pdfRenderer.renderImageWithDPI(i, 200, ImageType.RGB)'
PDFRenderer pdfRenderer = new PDFRenderer(document);
    for (int i = 0; i < document.getNumberOfPages(); ++i)
    {
        BufferedImage bim = pdfRenderer.renderImageWithDPI(i, 200,
ImageType.RGB);

        // suffix in filename will be used as the file format
        ImageIOUtil.writeImage(bim,
"/home/pivetta/desenvolvimento/pdf_to_png/testepdfbox/testecrop" + "-" +
(i+1) + ".png", 600);
    }
throws NegativeAtiveArraySizeException. I'm using PDFBOX 2.0.2, java 8,
Exception in thread "main" java.lang.NegativeArraySizeException
    at java.awt.image.DataBufferByte.<init>(DataBufferByte.java:76)
    at java.awt.image.Raster.createInterleavedRaster(Raster.java:266)
    at java.awt.image.Raster.createInterleavedRaster(Raster.java:212)
    at
java.awt.image.ComponentColorModel.createCompatibleWritableRaster(ComponentColorModel.java:2825)
    at
org.apache.pdfbox.rendering.TilingPaint.getImage(TilingPaint.java:134)
    at org.apache.pdfbox.rendering.TilingPaint.<init>(TilingPaint.java:69)
    at org.apache.pdfbox.rendering.PageDrawer.getPaint(PageDrawer.java:251)
    at
org.apache.pdfbox.rendering.PageDrawer.getNonStrokingPaint(PageDrawer.java:529)
    at org.apache.pdfbox.rendering.PageDrawer.fillPath(PageDrawer.java:600)
    at
org.apache.pdfbox.contentstream.operator.graphics.FillNonZeroRule.process(FillNonZeroRule.java:36)
    at
org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815)
    at
org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472)
    at
org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446)
    at
org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
    at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:189)
    at
org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:208)
    at
org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:139)
    at
org.apache.pdfbox.rendering.PDFRenderer.renderImageWithDPI(PDFRenderer.java:94)
    at ExtractImagesFromPDF.main(ExtractImagesFromPDF.java:67)

Reply via email to