Class PDFTiledImage
java.lang.Object
com.inductiveautomation.rm.pdf.reader.PDFTiledImage
- All Implemented Interfaces:
ImageConsumer
This class handles drawing images as tiles, for when allocating a BufferedImage for the entire pdf image would be
too expensive. It implements ImageConsumer, and assumes that it will be passes an ImageProducer that knows how to
generate itself top-down/left-right.
It keeps a BufferedImage only as large as a single tile. When drawImage() is called, the imageProducer is told to generate the image data. As soon as a single tile is filled, it is drawn and the Buffer is reused for the next tile. We could cut out the imageProducer middle-man and just go directly from the codec...
-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from interface java.awt.image.ImageConsumer
COMPLETESCANLINES, IMAGEABORTED, IMAGEERROR, RANDOMPIXELORDER, SINGLEFRAME, SINGLEFRAMEDONE, SINGLEPASS, STATICIMAGEDONE, TOPDOWNLEFTRIGHT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
drawImage
(ImageProducer ip, Graphics2D destination) The main entry point.static void
drawTiledImage
(ImageProducer ip, Graphics2D destination) int
Returns the height of the entire image.int
Returns the height of the tile (it's a strip)int
getWidth()
Returns the width of the entire image.void
imageComplete
(int status) ImageConsumer method.void
setColorModel
(ColorModel model) void
setDimensions
(int width, int height) ImageConsumer method.void
setHints
(int hintflags) void
setPixels
(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize) void
setPixels
(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize) void
setProperties
(Hashtable props)
-
Constructor Details
-
PDFTiledImage
public PDFTiledImage()
-
-
Method Details
-
getTileHeight
public int getTileHeight()Returns the height of the tile (it's a strip) -
getWidth
public int getWidth()Returns the width of the entire image. -
getHeight
public int getHeight()Returns the height of the entire image. -
imageComplete
public void imageComplete(int status) ImageConsumer method. Releases the tile.- Specified by:
imageComplete
in interfaceImageConsumer
-
setHints
public void setHints(int hintflags) - Specified by:
setHints
in interfaceImageConsumer
-
setColorModel
- Specified by:
setColorModel
in interfaceImageConsumer
-
setDimensions
public void setDimensions(int width, int height) ImageConsumer method. Assumption is that this will be called before any calls to setPixels()- Specified by:
setDimensions
in interfaceImageConsumer
-
getTileBuffer
-
setPixels
public void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize) - Specified by:
setPixels
in interfaceImageConsumer
-
setPixels
public void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize) - Specified by:
setPixels
in interfaceImageConsumer
-
setProperties
- Specified by:
setProperties
in interfaceImageConsumer
-
drawImage
The main entry point. Images are drawn at 0,0 so destination should have the image transform applied to it. -
drawTiledImage
-