Class PDFStream
- java.lang.Object
-
- com.inductiveautomation.rm.pdf.reader.PDFStream
-
- All Implemented Interfaces:
java.lang.Cloneable
public class PDFStream extends java.lang.Object implements java.lang.Cloneable
This class represents a PDF stream object.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addFilter(java.lang.String aName)
The dict for a stream may specify multiple filters.java.lang.Object
clone()
Standard clone implementation.static RBCodecCCITTFaxDecode
createCCITTFaxDecoder(java.util.Map params, byte[] bytes, int offset, int len)
Utility method to create a CCITTFaxDecoder from the stream's decodeParameters dictionary.byte[]
decodeStream()
Returns the result of running the data through all the filters.byte[]
decodeStream(int nfilters)
Returns the result of running the data through the first n filters.byte[]
getBytes()
Returns the stream bytes.static byte[]
getBytesDecoded(byte[] bytes, int offset, int length, java.lang.String aFilter, java.util.Map params)
Returns the result of runnning the bytes through a particular filter (/FlateDecode, /LZW, /ASCII85Decode, etc.).java.util.Map
getDictionary()
Returns the stream dictionary.java.util.Map
getFilterParameters(java.lang.String name)
Returns the filter parameters for a particular filterint
indexOfFilter(java.lang.String fName)
Returns the index of a particular filter in the filter chain, or -1 if not found.int
numFilters()
Returns the total number of filters with which this stream is currently encoded.boolean
usesFilter(java.lang.String fName)
Tests whether a specifc filter will be needed to decode the stream.
-
-
-
Method Detail
-
getBytes
public byte[] getBytes()
Returns the stream bytes.
-
getDictionary
public java.util.Map getDictionary()
Returns the stream dictionary.
-
addFilter
public void addFilter(java.lang.String aName)
The dict for a stream may specify multiple filters. The "Filter" property is either a single filter name or an array of filter names. If it's an array, the PDF reader will apply the filters in the order they appear. Call this method with the name of the filter after applying the encoding to the data.
-
usesFilter
public boolean usesFilter(java.lang.String fName)
Tests whether a specifc filter will be needed to decode the stream.
-
indexOfFilter
public int indexOfFilter(java.lang.String fName)
Returns the index of a particular filter in the filter chain, or -1 if not found.
-
numFilters
public int numFilters()
Returns the total number of filters with which this stream is currently encoded.
-
getFilterParameters
public java.util.Map getFilterParameters(java.lang.String name)
Returns the filter parameters for a particular filter
-
decodeStream
public byte[] decodeStream()
Returns the result of running the data through all the filters.
-
decodeStream
public byte[] decodeStream(int nfilters)
Returns the result of running the data through the first n filters.
-
getBytesDecoded
public static byte[] getBytesDecoded(byte[] bytes, int offset, int length, java.lang.String aFilter, java.util.Map params)
Returns the result of runnning the bytes through a particular filter (/FlateDecode, /LZW, /ASCII85Decode, etc.).
-
clone
public java.lang.Object clone()
Standard clone implementation.- Overrides:
clone
in classjava.lang.Object
-
createCCITTFaxDecoder
public static RBCodecCCITTFaxDecode createCCITTFaxDecoder(java.util.Map params, byte[] bytes, int offset, int len)
Utility method to create a CCITTFaxDecoder from the stream's decodeParameters dictionary.
-
-