[ 
https://issues.apache.org/jira/browse/PDFBOX-3565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15656847#comment-15656847
 ] 

Andreas Lehmkühler commented on PDFBOX-3565:
--------------------------------------------

PDFBox doesn't provides an out-of-the-box compression as it isn't that simple. 
One has to san the whole pdf, indentify all uncompresses streams (a pdf may 
contain a lot of streams), add a filter to that streams and save the file.

> PDF Compress using PDStream is not working. 
> --------------------------------------------
>
>                 Key: PDFBOX-3565
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3565
>             Project: PDFBox
>          Issue Type: Bug
>         Environment: PDFBox 2.0.2 version 
>            Reporter: Shubhangi Gojir Nipane
>            Priority: Blocker
>
> We are trying compress PDF using PDFBox 2.0.2 version.
> As mentioned in PDFBox 2.0.2 migration guide we are using PDSream object with 
> COSName.FLATE_DECODE which should compress the pdf. 
> 1) 
> {code}
>    File toCompress = new File("toCompress.pdf");
>    File compressedOutputFile = new File("compressedFile.pdf");
>     try {
>         PDDocument doc = new PDDocument();
>         InputStream in = new FileInputStream(toCompress);
>         OutputStream out = new FileOutputStream(compressedOutputFile);
>         PDPage page = new PDPage();
>         doc.addPage(page);
>         PDStream stream = new PDStream(doc, in,    COSName.FLATE_DECODE);
>         doc.save(out);
>         doc.close();
>     } catch (Exception e) {
>     }
> {code}
> above code snippet gives us blank compressed file with size 0. 
> 2) We try to load pdf stream data on document and then compress it . 
> {code}
>    File toCompress = new File("toCompress.pdf");
>    File compressedOutputFile = new File("compressedFile.pdf");
>     try {
>         PDDocument doc = new PDDocument();
>          doc.load(toCompress)
>         InputStream in = new FileInputStream(toCompress);
>         OutputStream out = new FileOutputStream(compressedOutputFile);
>         PDPage page = new PDPage();
>         doc.addPage(page);
>         PDStream stream = new PDStream(doc, in,    COSName.FLATE_DECODE);
>         doc.save(out);
>         doc.close();
>     } catch (Exception e) {
>     }
> {code}
> here we get new compressed file which is having bigger size than original one.
> So in short for compression  using PdfBox 2.0.,2 version is not working. 
> Please guide us how to do compress PdfBox 2.0.,2 version.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to