Package com.reportmill.graphics
Class RMImageData
java.lang.Object
com.reportmill.base.RMObject
com.reportmill.graphics.RMImageData
- All Implemented Interfaces:
RMArchiver.Archiving
,Cloneable
This class manages image data. Each instance holds the raw image data and provides methods to return
attributes of the decoded image.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
An interface for classes that can handle image reading for RMImageData. -
Constructor Summary
ConstructorsConstructorDescriptionReturns an empty RMImageData (useless except for legacy unarchival).RMImageData
(Image anImage) Returns an image reader for an image.RMImageData
(Object aSource, int pageNumber) Returns an image data for a given source (and page number, if image type supports it). -
Method Summary
Modifier and TypeMethodDescriptionawt()
Return AWT version of imageData.static boolean
Returns whether given extension is supported.boolean
Standard equals implementation.int
Color map support: returns the index of the transparent color in a color map image.int
Returns the number of bits per pixel (derived from bits per sample and samples per pixel).int
Returns the number of bits per sample (eg, 24 bit RGB image is 8 bits per sample).byte[]
getBytes()
Returns the original bytes for the image (loaded from the source).byte[]
Returns the decoded image bytes for the image.int
Returns the number of bytes per row (derived from width and bits per pixel).byte[]
Color map support: returns the bytes of color map from a color map image.int
Returns the number of pixels vertically.float
Returns the actual display height of the image in printer's points using the image DPI if available.static RMImageData
getImageData
(Object aSource, int page) Returns an image data loaded from aSource.Returns an RMShape representation of image data (for vector image type like PDF).getName()
Returns the name for the image (assigned from our hashCode).getPage
(int aPage) Returns the image data for a successive page.int
Returns the total number of pages for the image.int
Returns the page number for the image.Returns the reader used to load the image.int
Returns the number of samples per pixel (RGB=3, RGBA=4, GrayScale=1, etc.).Returns the original source for the image (byte[], File, InputStream or whatever).getType()
Returns the type for the image (one of gif, jpg, png, pdf, etc.).int
getWidth()
Returns the number of pixels horizontally.float
Returns the actual display width of the image in printer's points using the image DPI if available.boolean
hasAlpha()
Color map support: returns whether color map image has a transparent color.boolean
Returns whether image uses a color map.initWithArchiver
(RMArchiver anArchiver) Legacy unarchival.boolean
isColor()
Returns whether the image is non-grayscale.boolean
isValid()
Returns whether the image was loaded successfully.Methods inherited from class com.reportmill.base.RMObject
clone, copy, didChange, didUndo, getAnimAttribute, getClassNameShort, undoClone, undoCopy, undoEquals
-
Constructor Details
-
RMImageData
public RMImageData()Returns an empty RMImageData (useless except for legacy unarchival). -
RMImageData
Returns an image data for a given source (and page number, if image type supports it). -
RMImageData
Returns an image reader for an image.
-
-
Method Details
-
getImageData
Returns an image data loaded from aSource. If image type supports multiple pages, page number can be specified. -
canRead
Returns whether given extension is supported. -
getSource
Returns the original source for the image (byte[], File, InputStream or whatever). -
getBytes
public byte[] getBytes()Returns the original bytes for the image (loaded from the source). -
getBytesDecoded
public byte[] getBytesDecoded()Returns the decoded image bytes for the image. -
getName
Returns the name for the image (assigned from our hashCode). -
getType
Returns the type for the image (one of gif, jpg, png, pdf, etc.). -
getPageNumber
public int getPageNumber()Returns the page number for the image. -
getPageCount
public int getPageCount()Returns the total number of pages for the image. -
getWidth
public int getWidth()Returns the number of pixels horizontally. -
getHeight
public int getHeight()Returns the number of pixels vertically. -
getWidth2D
public float getWidth2D()Returns the actual display width of the image in printer's points using the image DPI if available. -
getHeight2D
public float getHeight2D()Returns the actual display height of the image in printer's points using the image DPI if available. -
isColor
public boolean isColor()Returns whether the image is non-grayscale. -
getSamplesPerPixel
public int getSamplesPerPixel()Returns the number of samples per pixel (RGB=3, RGBA=4, GrayScale=1, etc.). -
getBitsPerSample
public int getBitsPerSample()Returns the number of bits per sample (eg, 24 bit RGB image is 8 bits per sample). -
getBitsPerPixel
public int getBitsPerPixel()Returns the number of bits per pixel (derived from bits per sample and samples per pixel). -
getBytesPerRow
public int getBytesPerRow()Returns the number of bytes per row (derived from width and bits per pixel). -
hasAlpha
public boolean hasAlpha()Color map support: returns whether color map image has a transparent color. -
getAlphaColorIndex
public int getAlphaColorIndex()Color map support: returns the index of the transparent color in a color map image. -
hasColorMap
public boolean hasColorMap()Returns whether image uses a color map. -
getColorMap
public byte[] getColorMap()Color map support: returns the bytes of color map from a color map image. -
getPage
Returns the image data for a successive page. -
getImageShape
Returns an RMShape representation of image data (for vector image type like PDF). -
getReader
Returns the reader used to load the image. -
isValid
public boolean isValid()Returns whether the image was loaded successfully. -
equals
Standard equals implementation. -
awt
Return AWT version of imageData. -
initWithArchiver
Legacy unarchival.- Specified by:
initWithArchiver
in interfaceRMArchiver.Archiving
- Overrides:
initWithArchiver
in classRMObject
-