Class PDFFilterList

java.lang.Object
org.apache.fop.pdf.PDFFilterList

public class PDFFilterList extends Object
This class represents a list of PDF filters to be applied when serializing the output of a PDF object.
  • Field Details

  • Constructor Details

    • PDFFilterList

      public PDFFilterList()
      Default constructor.

      The flag for ignoring ASCII filters defaults to false.

    • PDFFilterList

      public PDFFilterList(boolean ignoreASCIIFilters)
      Use this descriptor if you want to have ASCII filters (such as ASCIIHex and ASCII85) ignored, for example, when encryption is active.
      Parameters:
      ignoreASCIIFilters - true if ASCII filters should be ignored
  • Method Details

    • setDisableAllFilters

      public void setDisableAllFilters(boolean value)
      Used to disable all filters.
      Parameters:
      value - true if all filters shall be disabled
    • isDisableAllFilters

      public boolean isDisableAllFilters()
      Returns true if all filters are disabled.
      Returns:
      true if all filters are disabled
    • isInitialized

      public boolean isInitialized()
      Indicates whether the filter list is already initialized.
      Returns:
      true if more there are filters present
    • addFilter

      public void addFilter(PDFFilter filter)
      Add a filter for compression of the stream. Filters are applied in the order they are added. This should always be a new instance of the particular filter of choice. The applied flag in the filter is marked true after it has been applied to the data.
      Parameters:
      filter - filter to add
    • addFilter

      public void addFilter(String filterType)
      Add a filter for compression of the stream by name.
      Parameters:
      filterType - name of the filter to add
    • ensureFilterInPlace

      public void ensureFilterInPlace(PDFFilter pdfFilter)
      Checks the filter list for the filter and adds it in the correct place if necessary.
      Parameters:
      pdfFilter - the filter to check / add
    • addDefaultFilters

      public void addDefaultFilters(Map filters, String type)
      Adds the default filters to this stream.
      Parameters:
      filters - Map of filters
      type - which filter list to modify
    • buildFilterDictEntries

      protected String buildFilterDictEntries()
      Apply the filters to the data in the order given and return the /Filter and /DecodeParms entries for the stream dictionary. If the filters have already been applied to the data (either externally, or internally) then the dictionary entries are built and returned.
      Returns:
      a String representing the filter list
    • putFilterDictEntries

      protected void putFilterDictEntries(PDFDictionary dict)
      Apply the filters to the data in the order given and add the /Filter and /DecodeParms entries to the stream dictionary. If the filters have already been applied to the data (either externally, or internally) then the dictionary entries added.
      Parameters:
      dict - the PDFDictionary to set the entries on
    • applyFilters

      public OutputStream applyFilters(OutputStream stream) throws IOException
      Applies all registered filters as necessary. The method returns an OutputStream which will receive the filtered contents.
      Parameters:
      stream - raw data output stream
      Returns:
      OutputStream filtered output stream
      Throws:
      IOException - In case of an I/O problem