fop 1.0

org.apache.fop.pdf
Class PDFFilterList

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

public class PDFFilterList
extends java.lang.Object

This class represents a list of PDF filters to be applied when serializing the output of a PDF object.


Field Summary
static java.lang.String CONTENT_FILTER
          Key for the filter used for normal content
static java.lang.String DEFAULT_FILTER
          Key for the default filter
static java.lang.String FONT_FILTER
          Key for the filter used for fonts
static java.lang.String IMAGE_FILTER
          Key for the filter used for images
static java.lang.String JPEG_FILTER
          Key for the filter used for JPEG images
static java.lang.String METADATA_FILTER
          Key for the filter used for metadata
static java.lang.String PRECOMPRESSED_FILTER
          Key for the filter used for precompressed content
static java.lang.String TIFF_FILTER
          Key for the filter used for TIFF images
 
Constructor Summary
PDFFilterList()
          Default constructor.
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.
 
Method Summary
 void addDefaultFilters(java.util.Map filters, java.lang.String type)
          Adds the default filters to this stream.
 void addFilter(PDFFilter filter)
          Add a filter for compression of the stream.
 void addFilter(java.lang.String filterType)
          Add a filter for compression of the stream by name.
 java.io.OutputStream applyFilters(java.io.OutputStream stream)
          Applies all registered filters as necessary.
protected  java.lang.String buildFilterDictEntries()
          Apply the filters to the data in the order given and return the /Filter and /DecodeParms entries for the stream dictionary.
 void ensureFilterInPlace(PDFFilter pdfFilter)
          Checks the filter list for the filter and adds it in the correct place if necessary.
 boolean isDisableAllFilters()
          Returns true if all filters are disabled.
 boolean isInitialized()
          Indicates whether the filter list is already initialized.
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.
 void setDisableAllFilters(boolean value)
          Used to disable all filters.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_FILTER

public static final java.lang.String DEFAULT_FILTER
Key for the default filter

See Also:
Constant Field Values

CONTENT_FILTER

public static final java.lang.String CONTENT_FILTER
Key for the filter used for normal content

See Also:
Constant Field Values

PRECOMPRESSED_FILTER

public static final java.lang.String PRECOMPRESSED_FILTER
Key for the filter used for precompressed content

See Also:
Constant Field Values

IMAGE_FILTER

public static final java.lang.String IMAGE_FILTER
Key for the filter used for images

See Also:
Constant Field Values

JPEG_FILTER

public static final java.lang.String JPEG_FILTER
Key for the filter used for JPEG images

See Also:
Constant Field Values

TIFF_FILTER

public static final java.lang.String TIFF_FILTER
Key for the filter used for TIFF images

See Also:
Constant Field Values

FONT_FILTER

public static final java.lang.String FONT_FILTER
Key for the filter used for fonts

See Also:
Constant Field Values

METADATA_FILTER

public static final java.lang.String METADATA_FILTER
Key for the filter used for metadata

See Also:
Constant Field Values
Constructor Detail

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 Detail

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(java.lang.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(java.util.Map filters,
                              java.lang.String type)
Adds the default filters to this stream.

Parameters:
filters - Map of filters
type - which filter list to modify

buildFilterDictEntries

protected java.lang.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 java.io.OutputStream applyFilters(java.io.OutputStream stream)
                                  throws java.io.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:
java.io.IOException - In case of an I/O problem

fop 1.0

Copyright 1999-2010 The Apache Software Foundation. All Rights Reserved.