Package org.apache.pdfbox.filter
Class Filter
- java.lang.Object
-
- org.apache.pdfbox.filter.Filter
-
- Direct Known Subclasses:
ASCII85Filter
,ASCIIHexFilter
,CCITTFaxFilter
,CryptFilter
,DCTFilter
,FlateFilter
,IdentityFilter
,JBIG2Filter
,JPXFilter
,LZWFilter
,RunLengthDecodeFilter
public abstract class Filter extends java.lang.Object
A filter for stream data.
-
-
Field Summary
Fields Modifier and Type Field Description private static org.apache.commons.logging.Log
LOG
static java.lang.String
SYSPROP_DEFLATELEVEL
Compression Level System Property.
-
Constructor Summary
Constructors Modifier Constructor Description protected
Filter()
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract DecodeResult
decode(java.io.InputStream encoded, java.io.OutputStream decoded, COSDictionary parameters, int index)
Decodes data, producing the original non-encoded data.DecodeResult
decode(java.io.InputStream encoded, java.io.OutputStream decoded, COSDictionary parameters, int index, DecodeOptions options)
Decodes data, with optional DecodeOptions.protected abstract void
encode(java.io.InputStream input, java.io.OutputStream encoded, COSDictionary parameters)
void
encode(java.io.InputStream input, java.io.OutputStream encoded, COSDictionary parameters, int index)
Encodes data.protected static javax.imageio.ImageReader
findImageReader(java.lang.String formatName, java.lang.String errorCause)
Finds a suitable image reader for a format.static int
getCompressionLevel()
protected COSDictionary
getDecodeParams(COSDictionary dictionary, int index)
-
-
-
Field Detail
-
LOG
private static final org.apache.commons.logging.Log LOG
-
SYSPROP_DEFLATELEVEL
public static final java.lang.String 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:
- Constant Field Values
-
-
Method Detail
-
decode
public abstract DecodeResult decode(java.io.InputStream encoded, java.io.OutputStream decoded, COSDictionary parameters, int index) throws java.io.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:
java.io.IOException
- if the stream cannot be decoded
-
decode
public DecodeResult decode(java.io.InputStream encoded, java.io.OutputStream decoded, COSDictionary parameters, int index, DecodeOptions options) throws java.io.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:
java.io.IOException
- if the stream cannot be decoded
-
encode
public final void encode(java.io.InputStream input, java.io.OutputStream encoded, COSDictionary parameters, int index) throws java.io.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:
java.io.IOException
- if the stream cannot be encoded
-
encode
protected abstract void encode(java.io.InputStream input, java.io.OutputStream encoded, COSDictionary parameters) throws java.io.IOException
- Throws:
java.io.IOException
-
getDecodeParams
protected COSDictionary getDecodeParams(COSDictionary dictionary, int index)
-
findImageReader
protected static javax.imageio.ImageReader findImageReader(java.lang.String formatName, java.lang.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
-
-