[ https://issues.apache.org/jira/browse/PDFBOX-2274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14110484#comment-14110484 ]
Tilman Hausherr commented on PDFBOX-2274: ----------------------------------------- Look in the sources for getPartiallyFilteredStream() and its uses, this does what you need. > Decoding issue in PDImageXObject > -------------------------------- > > Key: PDFBOX-2274 > URL: https://issues.apache.org/jira/browse/PDFBOX-2274 > Project: PDFBox > Issue Type: Bug > Components: PDModel > Affects Versions: 2.0.0 > Reporter: Dominic Tubach > > I'm using JpegFactory to create an PDImageXObject from a content stream. > There the constrcutor > {code} > PDImageXObject(PDDocument document, InputStream filteredStream, > COSBase cosFilter, int width, int height, int bitsPerComponent, > PDColorSpace initColorSpace) > {code} > is used. > I've found the following issue: > The method getUnfilteredStream() of the COSStream in the PDImageXObject > returns an input stream containing a RandomAccessFileInputStream with > {{currentPosition = 50814}} and {{endPosition = 1440000}} and my following > operation fails. > If the method doDecode() of the COSStream is called before the filter is set > in the COSStream the input stream returned by getUnfilteredStream() contains > a RandomAccessFileInputStream with {{currentPosition = 0}} and {{endPosition > = 50814}} and the result is as expected. > I've achieved this by adding > {code} > getStream().getStream().getDecodeResult(); > {code} > before > {code} > getCOSStream().setItem(COSName.FILTER, cosFilter); > {code} > in the PDImageXObject contructor. -- This message was sent by Atlassian JIRA (v6.2#6252)