Package org.apache.fop.render.pdf
Class ImageRenderedAdapter
java.lang.Object
org.apache.fop.render.pdf.AbstractImageAdapter
org.apache.fop.render.pdf.ImageRenderedAdapter
- All Implemented Interfaces:
PDFImage
PDFImage implementation for the PDF renderer which handles RenderedImages.
-
Field Summary
Fields inherited from class org.apache.fop.render.pdf.AbstractImageAdapter
image
-
Constructor Summary
ConstructorDescriptionImageRenderedAdapter
(org.apache.xmlgraphics.image.loader.impl.ImageRendered image, String key) Creates a new PDFImage from an Image instance. -
Method Summary
Modifier and TypeMethodDescriptionint
Get the bits per color component for this image.Get the color space for this image.protected ICC_Profile
Returns the effective ICC profile for the image.Returns a hint in form of a String (Possible values from PDFFilterList) indicating which filter setup should be used to encode the object.int
Get the image height in pixels.org.apache.xmlgraphics.image.loader.impl.ImageRendered
getImage()
Returns the ImageRendered instance for this adapter.protected ColorSpace
Returns the image's color space.getMask()
Get the PDF reference for a bitmap mask.Get the PDF Filter to be applied to the image.Get the PDF reference for a soft mask.Get the transparent color.int
getWidth()
Get the image width in pixels.boolean
Check if this image has a transparent color transparency.void
Writes the raw, unencoded contents of the image to a given output stream.void
Populates the XObject's dictionary with additional values.void
setup
(PDFDocument doc) Setup the PDF image for the current document.Methods inherited from class org.apache.fop.render.pdf.AbstractImageAdapter
disallowMultipleFilters, getICCStream, getKey, getSoftMask, isInverted, isPS, issRGB, multipleFiltersAllowed, populateXObjectDictionaryForIndexColorModel, toPDFColorSpace
-
Constructor Details
-
ImageRenderedAdapter
public ImageRenderedAdapter(org.apache.xmlgraphics.image.loader.impl.ImageRendered image, String key) Creates a new PDFImage from an Image instance.- Parameters:
image
- the imagekey
- XObject key
-
-
Method Details
-
getImage
public org.apache.xmlgraphics.image.loader.impl.ImageRendered getImage()Returns the ImageRendered instance for this adapter.- Returns:
- the ImageRendered instance
-
getWidth
public int getWidth()Get the image width in pixels.- Specified by:
getWidth
in interfacePDFImage
- Overrides:
getWidth
in classAbstractImageAdapter
- Returns:
- the image width
-
getHeight
public int getHeight()Get the image height in pixels.- Specified by:
getHeight
in interfacePDFImage
- Overrides:
getHeight
in classAbstractImageAdapter
- Returns:
- the image height
-
getImageColorSpace
Returns the image's color space.- Overrides:
getImageColorSpace
in classAbstractImageAdapter
- Returns:
- the color space
-
getEffectiveICCProfile
Returns the effective ICC profile for the image.- Overrides:
getEffectiveICCProfile
in classAbstractImageAdapter
- Returns:
- an ICC profile or null
-
setup
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).- Specified by:
setup
in interfacePDFImage
- Overrides:
setup
in classAbstractImageAdapter
- Parameters:
doc
- the PDF parent document (todo) Remove this and delegate to the XObject
-
getColorSpace
Get the color space for this image. Possible results are: DeviceGray, DeviceRGB, or DeviceCMYK- Returns:
- the color space
-
getBitsPerComponent
public int getBitsPerComponent()Get the bits per color component for this image.- Returns:
- the bits per component
-
isTransparent
public boolean isTransparent()Check if this image has a transparent color transparency. Classes such asPDFImageXObject
rely on this simple binary model of transparency (e.g. compare toTransparency
) in order to render color key masking (see PDF Spec 1.7 Chapter 8.9.6.4). Therefore only return true if image has fully transparent colors.- Specified by:
isTransparent
in interfacePDFImage
- Overrides:
isTransparent
in classAbstractImageAdapter
- Returns:
- true if it has at least one fully transparent color
-
getTransparentColor
Get the transparent color.- Specified by:
getTransparentColor
in interfacePDFImage
- Overrides:
getTransparentColor
in classAbstractImageAdapter
- Returns:
- the transparent color for this image
-
getMask
Get the PDF reference for a bitmap mask.- Specified by:
getMask
in interfacePDFImage
- Overrides:
getMask
in classAbstractImageAdapter
- Returns:
- the PDF reference for the mask image
-
getSoftMaskReference
Get the PDF reference for a soft mask.- Specified by:
getSoftMaskReference
in interfacePDFImage
- Overrides:
getSoftMaskReference
in classAbstractImageAdapter
- Returns:
- the PDF reference for a soft mask image (or null if there's no soft mask)
-
getPDFFilter
Get the PDF Filter to be applied to the image.- Returns:
- the PDF Filter or null
-
outputContents
Writes the raw, unencoded contents of the image to a given output stream.- Parameters:
out
- OutputStream to write to- Throws:
IOException
- if there creating stream
-
populateXObjectDictionary
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.- Specified by:
populateXObjectDictionary
in interfacePDFImage
- Overrides:
populateXObjectDictionary
in classAbstractImageAdapter
- Parameters:
dict
- the dictionary to fill
-
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
-