Package org.apache.pdfbox.filter
Class Filter
java.lang.Object
org.apache.pdfbox.filter.Filter
A filter for stream data.
- Author:
- Ben Litchfield, John Hewson
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract DecodeResult
decode
(InputStream encoded, OutputStream decoded, COSDictionary parameters, int index) Decodes data, producing the original non-encoded data.decode
(InputStream encoded, OutputStream decoded, COSDictionary parameters, int index, DecodeOptions options) Decodes data, with optional DecodeOptions.protected abstract void
encode
(InputStream input, OutputStream encoded, COSDictionary parameters) final void
encode
(InputStream input, OutputStream encoded, COSDictionary parameters, int index) Encodes data.protected static ImageReader
findImageReader
(String formatName, String errorCause) Finds a suitable image reader for a format.static int
protected COSDictionary
getDecodeParams
(COSDictionary dictionary, int index)
-
Field Details
-
SYSPROP_DEFLATELEVEL
Compression Level System Property. Set this to a value from 0 to 9 to change the zlib deflate compression level used to compress /Flate streams. The default value is -1 which isDeflater.DEFAULT_COMPRESSION
. To set maximum compression, useSystem.setProperty(Filter.SYSPROP_DEFLATELEVEL, "9");
- See Also:
-
-
Constructor Details
-
Filter
protected Filter()Constructor.
-
-
Method Details
-
decode
public abstract DecodeResult decode(InputStream encoded, OutputStream decoded, COSDictionary parameters, int index) throws IOException Decodes data, producing the original non-encoded data.- Parameters:
encoded
- the encoded byte streamdecoded
- the stream where decoded data will be writtenparameters
- the parameters used for decodingindex
- the index to the filter being decoded- Returns:
- repaired parameters dictionary, or the original parameters dictionary
- Throws:
IOException
- if the stream cannot be decoded
-
decode
public DecodeResult decode(InputStream encoded, OutputStream decoded, COSDictionary parameters, int index, DecodeOptions options) throws IOException Decodes data, with optional DecodeOptions. Not all filters support all options, and so callers should check the options'honored
flag to test if they were applied.- Parameters:
encoded
- the encoded byte streamdecoded
- the stream where decoded data will be writtenparameters
- the parameters used for decodingindex
- the index to the filter being decodedoptions
- additional options for decoding- Returns:
- repaired parameters dictionary, or the original parameters dictionary
- Throws:
IOException
- if the stream cannot be decoded
-
encode
public final void encode(InputStream input, OutputStream encoded, COSDictionary parameters, int index) throws IOException Encodes data.- Parameters:
input
- the byte stream to encodeencoded
- the stream where encoded data will be writtenparameters
- the parameters used for encodingindex
- the index to the filter being encoded- Throws:
IOException
- if the stream cannot be encoded
-
encode
protected abstract void encode(InputStream input, OutputStream encoded, COSDictionary parameters) throws IOException - Throws:
IOException
-
getDecodeParams
-
findImageReader
protected static ImageReader findImageReader(String formatName, String errorCause) throws MissingImageReaderException Finds a suitable image reader for a format.- Parameters:
formatName
- The format to search for.errorCause
- The probably cause if something goes wrong.- Returns:
- The image reader for the format.
- Throws:
MissingImageReaderException
- if no image reader is found.
-
getCompressionLevel
public static int getCompressionLevel()- Returns:
- the ZIP compression level configured for PDFBox
-