Class PNMImageReader
- java.lang.Object
-
- javax.imageio.ImageReader
-
- com.twelvemonkeys.imageio.ImageReaderBase
-
- com.twelvemonkeys.imageio.plugins.pnm.PNMImageReader
-
public final class PNMImageReader extends ImageReaderBase
-
-
Field Summary
Fields Modifier and Type Field Description private PNMHeader
header
-
Fields inherited from class com.twelvemonkeys.imageio.ImageReaderBase
imageInput
-
-
Constructor Summary
Constructors Constructor Description PNMImageReader(javax.imageio.spi.ImageReaderSpi provider)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static java.lang.String
asASCII(short type)
private java.awt.image.Raster
clipRowToRect(java.awt.image.Raster raster, java.awt.Rectangle rect, int[] bands, int xSub)
private java.awt.image.WritableRaster
clipToRect(java.awt.image.WritableRaster raster, java.awt.Rectangle rect, int[] bands)
private int[]
createBandOffsets(int numBands)
int
getHeight(int imageIndex)
javax.imageio.metadata.IIOMetadata
getImageMetadata(int imageIndex)
Default implementation that always returnsnull
.java.util.Iterator<javax.imageio.ImageTypeSpecifier>
getImageTypes(int imageIndex)
javax.imageio.ImageTypeSpecifier
getRawImageType(int imageIndex)
int
getWidth(int imageIndex)
static void
main(java.lang.String[] args)
private void
normalize(byte[] rowData, int start, int length)
private void
normalize(float[] rowData)
private void
normalize(short[] rowData)
java.awt.image.BufferedImage
read(int imageIndex, javax.imageio.ImageReadParam param)
private static void
readFully(java.io.DataInput input, float[] floats)
private static void
readFully(java.io.DataInput input, short[] shorts)
private void
readHeader()
private void
readRowByte(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, byte[] rowDataByte, int bitsPerSample, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub)
private void
readRowFloat(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, float[] rowDataFloat, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub)
private void
readRowUShort(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, short[] rowDataUShort, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub)
protected void
resetMembers()
Resets all member variables.private java.io.DataInput
wrapInput()
-
Methods inherited from class com.twelvemonkeys.imageio.ImageReaderBase
assertInput, checkBounds, dispose, fakeAOI, fakeSubsampling, getDestination, getNumImages, getStreamMetadata, hasExplicitDestination, reset, setInput, showIt
-
Methods inherited from class javax.imageio.ImageReader
abort, abortRequested, addIIOReadProgressListener, addIIOReadUpdateListener, addIIOReadWarningListener, canReadRaster, checkReadParamBandSettings, clearAbortRequest, computeRegions, getAspectRatio, getAvailableLocales, getDefaultReadParam, getFormatName, getImageMetadata, getInput, getLocale, getMinIndex, getNumThumbnails, getOriginatingProvider, getSourceRegion, getStreamMetadata, getThumbnailHeight, getThumbnailWidth, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, hasThumbnails, isIgnoringMetadata, isImageTiled, isRandomAccessEasy, isSeekForwardOnly, processImageComplete, processImageProgress, processImageStarted, processImageUpdate, processPassComplete, processPassStarted, processReadAborted, processSequenceComplete, processSequenceStarted, processThumbnailComplete, processThumbnailPassComplete, processThumbnailPassStarted, processThumbnailProgress, processThumbnailStarted, processThumbnailUpdate, processWarningOccurred, processWarningOccurred, read, readAll, readAll, readAsRenderedImage, readerSupportsThumbnails, readRaster, readThumbnail, readTile, readTileRaster, removeAllIIOReadProgressListeners, removeAllIIOReadUpdateListeners, removeAllIIOReadWarningListeners, removeIIOReadProgressListener, removeIIOReadUpdateListener, removeIIOReadWarningListener, setInput, setInput, setLocale
-
-
-
-
Field Detail
-
header
private PNMHeader header
-
-
Method Detail
-
resetMembers
protected void resetMembers()
Description copied from class:ImageReaderBase
Resets all member variables. This method is by default invoked from:- Specified by:
resetMembers
in classImageReaderBase
-
readHeader
private void readHeader() throws java.io.IOException
- Throws:
java.io.IOException
-
asASCII
static java.lang.String asASCII(short type)
-
getWidth
public int getWidth(int imageIndex) throws java.io.IOException
- Specified by:
getWidth
in classjavax.imageio.ImageReader
- Throws:
java.io.IOException
-
getHeight
public int getHeight(int imageIndex) throws java.io.IOException
- Specified by:
getHeight
in classjavax.imageio.ImageReader
- Throws:
java.io.IOException
-
getRawImageType
public javax.imageio.ImageTypeSpecifier getRawImageType(int imageIndex) throws java.io.IOException
- Overrides:
getRawImageType
in classjavax.imageio.ImageReader
- Throws:
java.io.IOException
-
createBandOffsets
private int[] createBandOffsets(int numBands)
-
getImageTypes
public java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes(int imageIndex) throws java.io.IOException
- Specified by:
getImageTypes
in classjavax.imageio.ImageReader
- Throws:
java.io.IOException
-
read
public java.awt.image.BufferedImage read(int imageIndex, javax.imageio.ImageReadParam param) throws java.io.IOException
- Specified by:
read
in classjavax.imageio.ImageReader
- Throws:
java.io.IOException
-
wrapInput
private java.io.DataInput wrapInput() throws javax.imageio.IIOException
- Throws:
javax.imageio.IIOException
-
clipRowToRect
private java.awt.image.Raster clipRowToRect(java.awt.image.Raster raster, java.awt.Rectangle rect, int[] bands, int xSub)
-
clipToRect
private java.awt.image.WritableRaster clipToRect(java.awt.image.WritableRaster raster, java.awt.Rectangle rect, int[] bands)
-
readRowByte
private void readRowByte(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, byte[] rowDataByte, int bitsPerSample, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub) throws java.io.IOException
- Throws:
java.io.IOException
-
readRowUShort
private void readRowUShort(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, short[] rowDataUShort, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub) throws java.io.IOException
- Throws:
java.io.IOException
-
readRowFloat
private void readRowFloat(java.awt.image.WritableRaster destRaster, java.awt.image.Raster rowRaster, float[] rowDataFloat, int samplesPerPixel, java.io.DataInput input, int y, java.awt.Rectangle srcRegion, int xSub, int ySub) throws java.io.IOException
- Throws:
java.io.IOException
-
readFully
private static void readFully(java.io.DataInput input, short[] shorts) throws java.io.IOException
- Throws:
java.io.IOException
-
readFully
private static void readFully(java.io.DataInput input, float[] floats) throws java.io.IOException
- Throws:
java.io.IOException
-
normalize
private void normalize(byte[] rowData, int start, int length)
-
normalize
private void normalize(short[] rowData)
-
normalize
private void normalize(float[] rowData)
-
getImageMetadata
public javax.imageio.metadata.IIOMetadata getImageMetadata(int imageIndex) throws java.io.IOException
Description copied from class:ImageReaderBase
Default implementation that always returnsnull
.- Overrides:
getImageMetadata
in classImageReaderBase
- Parameters:
imageIndex
- ignored, unless overridden- Returns:
null
, unless overridden- Throws:
java.io.IOException
- never, unless overridden.
-
main
public static void main(java.lang.String[] args) throws java.io.IOException
- Throws:
java.io.IOException
-
-