Class Filter

    • 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.
    • 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 is Deflater.DEFAULT_COMPRESSION. To set maximum compression, use System.setProperty(Filter.SYSPROP_DEFLATELEVEL, "9");
        See Also:
        Constant Field Values
    • Constructor Detail

      • Filter

        protected Filter()
        Constructor.
    • 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 stream
        decoded - the stream where decoded data will be written
        parameters - the parameters used for decoding
        index - 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 stream
        decoded - the stream where decoded data will be written
        parameters - the parameters used for decoding
        index - the index to the filter being decoded
        options - 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 encode
        encoded - the stream where encoded data will be written
        parameters - the parameters used for encoding
        index - 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
      • 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