org.apache.fop.pdf

Interface PDFImage

Known Implementing Classes:
AbstractImageAdapter, AlphaRasterImage, BitmapImage, ImageRawCCITTFaxAdapter, ImageRawJPEGAdapter, ImageRenderedAdapter

public interface PDFImage

Interface for a PDF image. This is used for inserting an image into PDF.

Method Summary

int
getBitsPerComponent()
Get the bits per color component for this image.
PDFDeviceColorSpace
getColorSpace()
Get the color space for this image.
String
getFilterHint()
Returns a hint in form of a String (Possible values from PDFFilterList) indicating which filter setup should be used to encode the object.
int
getHeight()
Get the image height in pixels.
PDFICCStream
getICCStream()
Get the ICC stream for this image.
String
getKey()
Key to look up XObject.
String
getMask()
Get the PDF reference for a bitmap mask.
PDFFilter
getPDFFilter()
Get the PDF Filter to be applied to the image.
PDFReference
getSoftMaskReference()
Get the PDF reference for a soft mask.
PDFColor
getTransparentColor()
Get the transparent color.
int
getWidth()
Get the image width in pixels.
boolean
isInverted()
boolean
isPS()
Check if this image is a PostScript image.
boolean
isTransparent()
Check if this image has a transparent color transparency.
void
outputContents(OutputStream out)
Writes the raw, unencoded contents of the image to a given output stream.
void
populateXObjectDictionary(PDFDictionary dict)
Populates the XObject's dictionary with additional values.
void
setup(PDFDocument doc)
Setup the PDF image for the current document.

Method Details

getBitsPerComponent

public int getBitsPerComponent()
Get the bits per color component for this image.
Returns:
the bits per component

getColorSpace

public PDFDeviceColorSpace getColorSpace()
Get the color space for this image. Possible results are: DeviceGray, DeviceRGB, or DeviceCMYK
Returns:
the color space

getFilterHint

public String getFilterHint()
Returns a hint in form of a String (Possible values from PDFFilterList) indicating which filter setup should be used to encode the object.
Returns:
the filter setup hint

getHeight

public int getHeight()
Get the image height in pixels.
Returns:
the image height

getICCStream

public PDFICCStream getICCStream()
Get the ICC stream for this image.
Returns:
the ICC stream for this image if any

getKey

public String getKey()
Key to look up XObject. This should be a unique key to refer to the image.
Returns:
the key for this image

getMask

public String getMask()
Get the PDF reference for a bitmap mask.
Returns:
the PDF reference for the mask image

getPDFFilter

public PDFFilter getPDFFilter()
Get the PDF Filter to be applied to the image.
Returns:
the PDF Filter or null

getSoftMaskReference

public PDFReference getSoftMaskReference()
Get the PDF reference for a soft mask.
Returns:
the PDF reference for a soft mask image (or null if there's no soft mask)

getTransparentColor

public PDFColor getTransparentColor()
Get the transparent color.
Returns:
the transparent color for this image

getWidth

public int getWidth()
Get the image width in pixels.
Returns:
the image width

isInverted

public boolean isInverted()
Returns:
true for CMYK images generated by Adobe Photoshop

isPS

public boolean isPS()
Check if this image is a PostScript image.
Returns:
true if this is a PostScript image

isTransparent

public boolean isTransparent()
Check if this image has a transparent color transparency.
Returns:
true if it has transparency

outputContents

public void outputContents(OutputStream out)
            throws IOException
Writes the raw, unencoded contents of the image to a given output stream.
Parameters:
out - OutputStream to write to

populateXObjectDictionary

public void populateXObjectDictionary(PDFDictionary dict)
Populates the XObject's dictionary with additional values. The values are added to the dictionary after all the values obtained from other methods from this interface have been put into the dictionary. That allows to override certain values.
Parameters:
dict - the dictionary to fill

setup

public void setup(PDFDocument doc)
Setup the PDF image for the current document. Some image formats may need to access the document (for example to add an ICC profile to the document).
Parameters:
doc - the PDF parent document (todo) Remove this and delegate to the XObject

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