| java.lang.Object org.pdfbox.filter.RunLengthDecodeFilter
RunLengthDecodeFilter | public class RunLengthDecodeFilter implements Filter(Code) | | This is a filter for the RunLength Decoder.
From the PDF Reference
The RunLengthDecode filter decodes data that has been encoded in a simple
byte-oriented format based on run length. The encoded data is a sequence of
runs, where each run consists of a length byte followed by 1 to 128 bytes of data. If
the length byte is in the range 0 to 127, the following length + 1 (1 to 128) bytes
are copied literally during decompression. If length is in the range 129 to 255, the
following single byte is to be copied 257 ? length (2 to 128) times during decompression.
A length value of 128 denotes EOD.
The compression achieved by run-length encoding depends on the input data. In
the best case (all zeros), a compression of approximately 64:1 is achieved for long
files. The worst case (the hexadecimal sequence 00 alternating with FF) results in
an expansion of 127:128.
author: Ben Litchfield version: $Revision: 1.5 $ |
RunLengthDecodeFilter | public RunLengthDecodeFilter()(Code) | | Constructor.
|
decode | public void decode(InputStream compressedData, OutputStream result, COSDictionary options) throws IOException(Code) | | This will decode some compressed data.
Parameters: compressedData - The compressed byte stream. Parameters: result - The place to write the uncompressed byte stream. Parameters: options - The options to use to encode the data. throws: IOException - If there is an error decompressing the stream. |
encode | public void encode(InputStream rawData, OutputStream result, COSDictionary options) throws IOException(Code) | | This will encode some data.
Parameters: rawData - The raw data to encode. Parameters: result - The place to write to encoded results to. Parameters: options - The options to use to encode the data. throws: IOException - If there is an error compressing the stream. |
|
|