[ 
https://issues.apache.org/jira/browse/PDFBOX-2070?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tilman Hausherr updated PDFBOX-2070:
------------------------------------

    Description: 
If there are several filters (filter array) in an image, PDFBox is inserting an 
empty DecodeParms object here
{code}
params.setItem(COSName.DECODE_PARMS, getDecodeParams(params, index));
{code}
instead of either inserting an empty COSArray, or (better) do nothing. Saving 
such a PDF results in it not being displayable in the Acrobat Reader.

Test code:
{code}
        PDDocument d = PDDocument.load("before.pdf");
        new PDFRenderer(d).renderImage(0);
        d.save("after.pdf");
{code}
The rendering is important because without it, the filtered objects aren't 
decoded.

  was:
If there are several filters (filter array) in an image, PDFBox is inserting an 
empty DecodeParms object, instead of either inserting an empty COSAarray, or 
(better) do nothing. Saving such a PDF results in it not being displayable in 
the Acrobat Reader.

Test code:
{code}
        PDDocument d = PDDocument.load("before.pdf");
        new PDFRenderer(d).renderImage(0);
        d.save("after.pdf");
{code}
The rendering is important because without it, the filtered objects aren't 
decoded.


> Filter.decode() modifies PDF if there is a filter array
> -------------------------------------------------------
>
>                 Key: PDFBOX-2070
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2070
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 2.0.0
>            Reporter: Tilman Hausherr
>         Attachments: after.pdf, before.pdf
>
>
> If there are several filters (filter array) in an image, PDFBox is inserting 
> an empty DecodeParms object here
> {code}
> params.setItem(COSName.DECODE_PARMS, getDecodeParams(params, index));
> {code}
> instead of either inserting an empty COSArray, or (better) do nothing. Saving 
> such a PDF results in it not being displayable in the Acrobat Reader.
> Test code:
> {code}
>         PDDocument d = PDDocument.load("before.pdf");
>         new PDFRenderer(d).renderImage(0);
>         d.save("after.pdf");
> {code}
> The rendering is important because without it, the filtered objects aren't 
> decoded.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to