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 TypeMethodDescriptionvoiddrawImage(ImageProducer ip, Graphics2D destination) The main entry point.static voiddrawTiledImage(ImageProducer ip, Graphics2D destination) intReturns the height of the entire image.intReturns the height of the tile (it's a strip)intgetWidth()Returns the width of the entire image.voidimageComplete(int status) ImageConsumer method.voidsetColorModel(ColorModel model) voidsetDimensions(int width, int height) ImageConsumer method.voidsetHints(int hintflags) voidsetPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize) voidsetPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize) voidsetProperties(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:
imageCompletein interfaceImageConsumer
-
setHints
public void setHints(int hintflags) - Specified by:
setHintsin interfaceImageConsumer
-
setColorModel
- Specified by:
setColorModelin 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:
setDimensionsin interfaceImageConsumer
-
getTileBuffer
-
setPixels
public void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize) - Specified by:
setPixelsin interfaceImageConsumer
-
setPixels
public void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize) - Specified by:
setPixelsin interfaceImageConsumer
-
setProperties
- Specified by:
setPropertiesin interfaceImageConsumer
-
drawImage
The main entry point. Images are drawn at 0,0 so destination should have the image transform applied to it. -
drawTiledImage
-