public class PNGRed extends AbstractRed
Modifier and Type | Class and Description |
---|---|
(package private) static class |
PNGRed.PNGChunk |
Modifier and Type | Field and Description |
---|---|
private byte[] |
alphaPalette |
private int[][] |
bandOffsets |
private int |
bitDepth |
private int |
bkgdBlue |
private int |
bkgdGreen |
private int |
bkgdRed |
private byte[] |
bluePalette |
private int |
blueTransparentAlpha |
private java.awt.Rectangle |
bounds |
private int |
bytesPerPixel |
private float[] |
chromaticity |
private int |
chunkIndex |
private static java.awt.image.ComponentColorModel |
colorModelGray16 |
private static java.awt.image.ComponentColorModel |
colorModelGray32 |
private static java.awt.image.ComponentColorModel |
colorModelGray8 |
private static java.awt.image.ComponentColorModel |
colorModelGrayAlpha16 |
private static java.awt.image.ComponentColorModel |
colorModelGrayAlpha32 |
private static java.awt.image.ComponentColorModel |
colorModelGrayAlpha8 |
private static java.awt.image.ComponentColorModel |
colorModelRGB16 |
private static java.awt.image.ComponentColorModel |
colorModelRGB32 |
private static java.awt.image.ComponentColorModel |
colorModelRGB8 |
private static java.awt.image.ComponentColorModel |
colorModelRGBA16 |
private static java.awt.image.ComponentColorModel |
colorModelRGBA32 |
private static java.awt.image.ComponentColorModel |
colorModelRGBA8 |
private int |
colorType |
private static java.lang.String[] |
colorTypeNames |
private int |
compressionMethod |
private java.io.DataInputStream |
dataStream |
private PNGDecodeParam |
decodeParam |
private float |
displayExponent |
private boolean |
emitProperties |
private PNGEncodeParam |
encodeParam |
private byte[][] |
expandBits |
private boolean |
expandGrayAlpha |
private boolean |
expandPalette |
private float |
fileGamma |
private int |
filterMethod |
private int[] |
gammaLut |
private boolean |
generateEncodeParam |
private static int[] |
GrayAlphaBits16 |
private static int[] |
GrayAlphaBits32 |
private static int[] |
GrayAlphaBits8 |
private static int[] |
GrayBits16 |
private static int[] |
GrayBits32 |
private static int[] |
GrayBits8 |
private int[] |
grayLut |
private int |
grayTransparentAlpha |
private byte[] |
greenPalette |
private int |
greenTransparentAlpha |
private int |
inputBands |
private int |
interlaceMethod |
private int |
maxOpacity |
private boolean |
output8BitGray |
private int |
outputBands |
private boolean |
outputHasAlphaPalette |
private int |
paletteEntries |
private boolean |
performGammaCorrection |
static int |
PNG_COLOR_GRAY |
static int |
PNG_COLOR_GRAY_ALPHA |
static int |
PNG_COLOR_PALETTE |
static int |
PNG_COLOR_RGB |
static int |
PNG_COLOR_RGB_ALPHA |
static int |
PNG_FILTER_AVERAGE |
static int |
PNG_FILTER_NONE |
static int |
PNG_FILTER_PAETH |
static int |
PNG_FILTER_SUB |
static int |
PNG_FILTER_UP |
private static int |
POST_ADD_GRAY_TRANS |
private static int |
POST_ADD_GRAY_TRANS_EXP |
private static int |
POST_ADD_RGB_TRANS |
private static int |
POST_EXP_MASK |
private static int |
POST_GAMMA |
private static int |
POST_GAMMA_EXP |
private static int |
POST_GRAY_ALPHA_EXP |
private static int |
POST_GRAY_LUT |
private static int |
POST_GRAY_LUT_ADD_TRANS |
private static int |
POST_GRAY_LUT_ADD_TRANS_EXP |
private static int |
POST_NONE |
private static int |
POST_PALETTE_TO_RGB |
private static int |
POST_PALETTE_TO_RGBA |
private static int |
POST_REMOVE_GRAY_TRANS |
private static int |
POST_REMOVE_RGB_TRANS |
private int |
postProcess |
private java.util.Map<java.lang.String,java.lang.Object> |
properties
A Hashtable containing the image properties.
|
private byte[] |
redPalette |
private int |
redTransparentAlpha |
private static int[] |
RGBABits16 |
private static int[] |
RGBABits32 |
private static int[] |
RGBABits8 |
private static int[] |
RGBBits16 |
private static int[] |
RGBBits32 |
private static int[] |
RGBBits8 |
private int[] |
significantBits |
private int |
sRGBRenderingIntent |
private java.util.List<java.io.InputStream> |
streamVec |
private boolean |
suppressAlpha |
private java.util.List |
textKeys |
private java.util.List |
textStrings |
private java.awt.image.WritableRaster |
theTile |
private float |
userExponent |
private java.util.List |
ztextKeys |
private java.util.List |
ztextStrings |
cm, minTileX, minTileY, numXTiles, numYTiles, props, sm, srcs, tileGridXOff, tileGridYOff, tileHeight, tileWidth
Constructor and Description |
---|
PNGRed(java.io.InputStream stream) |
PNGRed(java.io.InputStream stream,
PNGDecodeParam decodeParam) |
Modifier and Type | Method and Description |
---|---|
java.awt.image.WritableRaster |
copyData(java.awt.image.WritableRaster wr) |
static java.awt.image.ColorModel |
createComponentColorModel(java.awt.image.SampleModel sm)
A convenience method to create an instance of
ComponentColorModel suitable for use with the
given SampleModel . |
private java.awt.image.WritableRaster |
createRaster(int width,
int height,
int bands,
int scanlineStride,
int bitDepth) |
private static void |
decodeAverageFilter(byte[] curr,
byte[] prev,
int count,
int bpp) |
private void |
decodeImage(boolean useInterlacing) |
private static void |
decodePaethFilter(byte[] curr,
byte[] prev,
int count,
int bpp) |
private void |
decodePass(java.awt.image.WritableRaster imRas,
int xOffset,
int yOffset,
int xStep,
int yStep,
int passWidth,
int passHeight)
Reads in an image of a given size and returns it as a
WritableRaster.
|
private static void |
decodeSubFilter(byte[] curr,
int count,
int bpp) |
private static void |
decodeUpFilter(byte[] curr,
byte[] prev,
int count) |
private static java.lang.String |
getChunkType(java.io.DataInputStream distream) |
java.awt.image.Raster |
getTile(int tileX,
int tileY) |
private void |
initGammaLut(int bits) |
private void |
initGrayLut(int bits) |
private static int |
paethPredictor(int a,
int b,
int c) |
private void |
parse_bKGD_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_cHRM_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_gAMA_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_hIST_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_IEND_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_IHDR_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_pHYs_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_PLTE_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_sBIT_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_sRGB_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_tEXt_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_tIME_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_tRNS_chunk(PNGRed.PNGChunk chunk) |
private void |
parse_zTXt_chunk(PNGRed.PNGChunk chunk) |
private void |
processPixels(int process,
java.awt.image.Raster src,
java.awt.image.WritableRaster dst,
int xOffset,
int step,
int y,
int width) |
private static PNGRed.PNGChunk |
readChunk(java.io.DataInputStream distream) |
copyBand, copyToRaster, getBounds, getColorModel, getData, getData, getDependencyRegion, getDirtyRegion, getHeight, getMinTileX, getMinTileY, getMinX, getMinY, getNumXTiles, getNumYTiles, getProperty, getPropertyNames, getSampleModel, getSources, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, getWidth, getXTile, getYTile, init, init, makeTile, updateTileGridInfo
public static final int PNG_COLOR_GRAY
public static final int PNG_COLOR_RGB
public static final int PNG_COLOR_PALETTE
public static final int PNG_COLOR_GRAY_ALPHA
public static final int PNG_COLOR_RGB_ALPHA
private static final java.lang.String[] colorTypeNames
public static final int PNG_FILTER_NONE
public static final int PNG_FILTER_SUB
public static final int PNG_FILTER_UP
public static final int PNG_FILTER_AVERAGE
public static final int PNG_FILTER_PAETH
private int[][] bandOffsets
private int bitDepth
private int colorType
private int compressionMethod
private int filterMethod
private int interlaceMethod
private int paletteEntries
private byte[] redPalette
private byte[] greenPalette
private byte[] bluePalette
private byte[] alphaPalette
private int bkgdRed
private int bkgdGreen
private int bkgdBlue
private int grayTransparentAlpha
private int redTransparentAlpha
private int greenTransparentAlpha
private int blueTransparentAlpha
private int maxOpacity
private int[] significantBits
private boolean suppressAlpha
private boolean expandPalette
private boolean output8BitGray
private boolean outputHasAlphaPalette
private boolean performGammaCorrection
private boolean expandGrayAlpha
private boolean generateEncodeParam
private PNGDecodeParam decodeParam
private PNGEncodeParam encodeParam
private boolean emitProperties
private float fileGamma
private float userExponent
private float displayExponent
private float[] chromaticity
private int sRGBRenderingIntent
private int postProcess
private static final int POST_NONE
private static final int POST_GAMMA
private static final int POST_GRAY_LUT
private static final int POST_GRAY_LUT_ADD_TRANS
private static final int POST_PALETTE_TO_RGB
private static final int POST_PALETTE_TO_RGBA
private static final int POST_ADD_GRAY_TRANS
private static final int POST_ADD_RGB_TRANS
private static final int POST_REMOVE_GRAY_TRANS
private static final int POST_REMOVE_RGB_TRANS
private static final int POST_EXP_MASK
private static final int POST_GRAY_ALPHA_EXP
private static final int POST_GAMMA_EXP
private static final int POST_GRAY_LUT_ADD_TRANS_EXP
private static final int POST_ADD_GRAY_TRANS_EXP
private java.util.List<java.io.InputStream> streamVec
private java.io.DataInputStream dataStream
private int bytesPerPixel
private int inputBands
private int outputBands
private int chunkIndex
private java.util.List textKeys
private java.util.List textStrings
private java.util.List ztextKeys
private java.util.List ztextStrings
private java.awt.image.WritableRaster theTile
private java.awt.Rectangle bounds
private java.util.Map<java.lang.String,java.lang.Object> properties
private int[] gammaLut
private final byte[][] expandBits
private int[] grayLut
private static final int[] GrayBits8
private static final java.awt.image.ComponentColorModel colorModelGray8
private static final int[] GrayAlphaBits8
private static final java.awt.image.ComponentColorModel colorModelGrayAlpha8
private static final int[] GrayBits16
private static final java.awt.image.ComponentColorModel colorModelGray16
private static final int[] GrayAlphaBits16
private static final java.awt.image.ComponentColorModel colorModelGrayAlpha16
private static final int[] GrayBits32
private static final java.awt.image.ComponentColorModel colorModelGray32
private static final int[] GrayAlphaBits32
private static final java.awt.image.ComponentColorModel colorModelGrayAlpha32
private static final int[] RGBBits8
private static final java.awt.image.ComponentColorModel colorModelRGB8
private static final int[] RGBABits8
private static final java.awt.image.ComponentColorModel colorModelRGBA8
private static final int[] RGBBits16
private static final java.awt.image.ComponentColorModel colorModelRGB16
private static final int[] RGBABits16
private static final java.awt.image.ComponentColorModel colorModelRGBA16
private static final int[] RGBBits32
private static final java.awt.image.ComponentColorModel colorModelRGB32
private static final int[] RGBABits32
private static final java.awt.image.ComponentColorModel colorModelRGBA32
public PNGRed(java.io.InputStream stream) throws java.io.IOException
java.io.IOException
public PNGRed(java.io.InputStream stream, PNGDecodeParam decodeParam) throws java.io.IOException
java.io.IOException
private void initGammaLut(int bits)
private void initGrayLut(int bits)
private static java.lang.String getChunkType(java.io.DataInputStream distream)
private static PNGRed.PNGChunk readChunk(java.io.DataInputStream distream)
private void parse_IHDR_chunk(PNGRed.PNGChunk chunk)
private void parse_IEND_chunk(PNGRed.PNGChunk chunk) throws java.lang.Exception
java.lang.Exception
public static java.awt.image.ColorModel createComponentColorModel(java.awt.image.SampleModel sm)
ComponentColorModel
suitable for use with the
given SampleModel
. The SampleModel
should have a data type of DataBuffer.TYPE_BYTE
,
TYPE_USHORT
, or TYPE_INT
and between
1 and 4 bands. Depending on the number of bands of the
SampleModel
, either a gray, gray+alpha, rgb, or
rgb+alpha ColorModel
is returned.private void parse_PLTE_chunk(PNGRed.PNGChunk chunk)
private void parse_bKGD_chunk(PNGRed.PNGChunk chunk)
private void parse_cHRM_chunk(PNGRed.PNGChunk chunk)
private void parse_gAMA_chunk(PNGRed.PNGChunk chunk)
private void parse_hIST_chunk(PNGRed.PNGChunk chunk)
private void parse_pHYs_chunk(PNGRed.PNGChunk chunk)
private void parse_sBIT_chunk(PNGRed.PNGChunk chunk)
private void parse_sRGB_chunk(PNGRed.PNGChunk chunk)
private void parse_tEXt_chunk(PNGRed.PNGChunk chunk)
private void parse_tIME_chunk(PNGRed.PNGChunk chunk)
private void parse_tRNS_chunk(PNGRed.PNGChunk chunk)
private void parse_zTXt_chunk(PNGRed.PNGChunk chunk)
private java.awt.image.WritableRaster createRaster(int width, int height, int bands, int scanlineStride, int bitDepth)
private static void decodeSubFilter(byte[] curr, int count, int bpp)
private static void decodeUpFilter(byte[] curr, byte[] prev, int count)
private static void decodeAverageFilter(byte[] curr, byte[] prev, int count, int bpp)
private static int paethPredictor(int a, int b, int c)
private static void decodePaethFilter(byte[] curr, byte[] prev, int count, int bpp)
private void processPixels(int process, java.awt.image.Raster src, java.awt.image.WritableRaster dst, int xOffset, int step, int y, int width)
private void decodePass(java.awt.image.WritableRaster imRas, int xOffset, int yOffset, int xStep, int yStep, int passWidth, int passHeight)
private void decodeImage(boolean useInterlacing)
public java.awt.image.WritableRaster copyData(java.awt.image.WritableRaster wr)
public java.awt.image.Raster getTile(int tileX, int tileY)
getTile
in interface java.awt.image.RenderedImage
getTile
in class AbstractRed