public class ImageTypeSpecifier extends Object
SampleModel and ColorModel) to be
 specified in a convenient manner.| Modifier and Type | Field and Description | 
|---|---|
| protected ColorModel | colorModelThe  ColorModelto be used as a prototype. | 
| protected SampleModel | sampleModelA  SampleModelto be used as a prototype. | 
| Constructor and Description | 
|---|
| ImageTypeSpecifier(ColorModel colorModel,
                  SampleModel sampleModel)Constructs an  ImageTypeSpecifierdirectly
 from aColorModeland aSampleModel. | 
| ImageTypeSpecifier(RenderedImage image)Constructs an  ImageTypeSpecifierfrom aRenderedImage. | 
| Modifier and Type | Method and Description | 
|---|---|
| static ImageTypeSpecifier | createBanded(ColorSpace colorSpace,
            int[] bankIndices,
            int[] bandOffsets,
            int dataType,
            boolean hasAlpha,
            boolean isAlphaPremultiplied)Returns a specifier for a banded image format that will use a
  ComponentColorModeland aBandedSampleModelto store each channel in a
 separate array. | 
| BufferedImage | createBufferedImage(int width,
                   int height)Creates a  BufferedImagewith a given width and
 height according to the specification embodied in this object. | 
| static ImageTypeSpecifier | createFromBufferedImageType(int bufferedImageType)Returns an  ImageTypeSpecifierthat encodes
 one of the standardBufferedImagetypes
 (other thanTYPE_CUSTOM). | 
| static ImageTypeSpecifier | createFromRenderedImage(RenderedImage image)Returns an  ImageTypeSpecifierthat encodes the
 layout of aRenderedImage(which may be aBufferedImage). | 
| static ImageTypeSpecifier | createGrayscale(int bits,
               int dataType,
               boolean isSigned)Returns a specifier for a grayscale image format that will pack
 pixels of the given bit depth into array elements of
 the specified data type. | 
| static ImageTypeSpecifier | createGrayscale(int bits,
               int dataType,
               boolean isSigned,
               boolean isAlphaPremultiplied)Returns a specifier for a grayscale plus alpha image format
 that will pack pixels of the given bit depth into array
 elements of the specified data type. | 
| static ImageTypeSpecifier | createIndexed(byte[] redLUT,
             byte[] greenLUT,
             byte[] blueLUT,
             byte[] alphaLUT,
             int bits,
             int dataType)Returns a specifier for an indexed-color image format that will pack
 index values of the given bit depth into array elements of
 the specified data type. | 
| static ImageTypeSpecifier | createInterleaved(ColorSpace colorSpace,
                 int[] bandOffsets,
                 int dataType,
                 boolean hasAlpha,
                 boolean isAlphaPremultiplied)Returns a specifier for an interleaved image format that will
 use a  ComponentColorModeland aPixelInterleavedSampleModelto store each pixel
 component in a separate byte, short, or int. | 
| static ImageTypeSpecifier | createPacked(ColorSpace colorSpace,
            int redMask,
            int greenMask,
            int blueMask,
            int alphaMask,
            int transferType,
            boolean isAlphaPremultiplied)Returns a specifier for a packed image format that will use a
  DirectColorModeland a packedSampleModelto store each pixel packed into in a
 single byte, short, or int. | 
| boolean | equals(Object o)Returns  trueif the givenObjectis
 anImageTypeSpecifierand has aSampleModelandColorModelthat are
 equal to those of this object. | 
| int | getBitsPerBand(int band)Return the number of bits used to represent samples of the given band. | 
| int | getBufferedImageType()Returns an int containing one of the enumerated constant values
 describing image formats from  BufferedImage. | 
| ColorModel | getColorModel()Returns the  ColorModelspecified by this object. | 
| int | getNumBands()Return the number of bands
 specified by this object. | 
| int | getNumComponents()Return the number of color components
 specified by this object. | 
| SampleModel | getSampleModel()Returns a  SampleModelbased on the settings
 encapsulated within this object. | 
| SampleModel | getSampleModel(int width,
              int height)Returns a  SampleModelbased on the settings
 encapsulated within this object. | 
| int | hashCode()Returns the hash code for this ImageTypeSpecifier. | 
protected ColorModel colorModel
ColorModel to be used as a prototype.protected SampleModel sampleModel
SampleModel to be used as a prototype.public ImageTypeSpecifier(ColorModel colorModel, SampleModel sampleModel)
ImageTypeSpecifier directly
 from a ColorModel and a SampleModel.
 It is the caller's responsibility to supply compatible
 parameters.colorModel - a ColorModel.sampleModel - a SampleModel.IllegalArgumentException - if either parameter is
 null.IllegalArgumentException - if sampleModel
 is not compatible with colorModel.public ImageTypeSpecifier(RenderedImage image)
ImageTypeSpecifier from a
 RenderedImage.  If a BufferedImage is
 being used, one of the factory methods
 createFromRenderedImage or
 createFromBufferedImageType should be used instead in
 order to get a more accurate result.image - a RenderedImage.IllegalArgumentException - if the argument is
 null.public static ImageTypeSpecifier createPacked(ColorSpace colorSpace, int redMask, int greenMask, int blueMask, int alphaMask, int transferType, boolean isAlphaPremultiplied)
DirectColorModel and a packed
 SampleModel to store each pixel packed into in a
 single byte, short, or int.colorSpace - the desired ColorSpace.redMask - a contiguous mask indicated the position of the
 red channel.greenMask - a contiguous mask indicated the position of the
 green channel.blueMask - a contiguous mask indicated the position of the
 blue channel.alphaMask - a contiguous mask indicated the position of the
 alpha channel.transferType - the desired SampleModel transfer type.isAlphaPremultiplied - true if the color channels
 will be premultipled by the alpha channel.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if colorSpace
 is null.IllegalArgumentException - if colorSpace
 is not of type TYPE_RGB.IllegalArgumentException - if no mask has at least 1
 bit set.IllegalArgumentException - if
 transferType if not one of
 DataBuffer.TYPE_BYTE,
 DataBuffer.TYPE_USHORT, or
 DataBuffer.TYPE_INT.public static ImageTypeSpecifier createInterleaved(ColorSpace colorSpace, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
ComponentColorModel and a
 PixelInterleavedSampleModel to store each pixel
 component in a separate byte, short, or int.colorSpace - the desired ColorSpace.bandOffsets - an array of ints indicating the
 offsets for each band.dataType - the desired data type, as one of the enumerations
 from the DataBuffer class.hasAlpha - true if an alpha channel is desired.isAlphaPremultiplied - true if the color channels
 will be premultipled by the alpha channel.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if colorSpace
 is null.IllegalArgumentException - if bandOffsets
 is null.IllegalArgumentException - if dataType is
 not one of the legal DataBuffer.TYPE_* constants.IllegalArgumentException - if
 bandOffsets.length does not equal the number of
 color space components, plus 1 if hasAlpha is
 true.public static ImageTypeSpecifier createBanded(ColorSpace colorSpace, int[] bankIndices, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
ComponentColorModel and a
 BandedSampleModel to store each channel in a
 separate array.colorSpace - the desired ColorSpace.bankIndices - an array of ints indicating the
 bank in which each band will be stored.bandOffsets - an array of ints indicating the
 starting offset of each band within its bank.dataType - the desired data type, as one of the enumerations
 from the DataBuffer class.hasAlpha - true if an alpha channel is desired.isAlphaPremultiplied - true if the color channels
 will be premultipled by the alpha channel.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if colorSpace
 is null.IllegalArgumentException - if bankIndices
 is null.IllegalArgumentException - if bandOffsets
 is null.IllegalArgumentException - if the lengths of
 bankIndices and bandOffsets differ.IllegalArgumentException - if
 bandOffsets.length does not equal the number of
 color space components, plus 1 if hasAlpha is
 true.IllegalArgumentException - if dataType is
 not one of the legal DataBuffer.TYPE_* constants.public static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned)
bits - the number of bits per gray value (1, 2, 4, 8, or 16).dataType - the desired data type, as one of the enumerations
 from the DataBuffer class.isSigned - true if negative values are to
 be represented.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if bits is
 not one of 1, 2, 4, 8, or 16.IllegalArgumentException - if dataType is
 not one of DataBuffer.TYPE_BYTE,
 DataBuffer.TYPE_SHORT, or
 DataBuffer.TYPE_USHORT.IllegalArgumentException - if bits is
 larger than the bit size of the given dataType.public static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned, boolean isAlphaPremultiplied)
bits - the number of bits per gray value (1, 2, 4, 8, or 16).dataType - the desired data type, as one of the enumerations
 from the DataBuffer class.isSigned - true if negative values are to
 be represented.isAlphaPremultiplied - true if the luminance channel
 will be premultipled by the alpha channel.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if bits is
 not one of 1, 2, 4, 8, or 16.IllegalArgumentException - if dataType is
 not one of DataBuffer.TYPE_BYTE,
 DataBuffer.TYPE_SHORT, or
 DataBuffer.TYPE_USHORT.IllegalArgumentException - if bits is
 larger than the bit size of the given dataType.public static ImageTypeSpecifier createIndexed(byte[] redLUT, byte[] greenLUT, byte[] blueLUT, byte[] alphaLUT, int bits, int dataType)
redLUT - an array of bytes containing
 the red values for each index.greenLUT - an array of bytes containing * the
  green values for each index.blueLUT - an array of bytes containing the
 blue values for each index.alphaLUT - an array of bytes containing the
 alpha values for each index, or null to create a
 fully opaque LUT.bits - the number of bits in each index.dataType - the desired output type, as one of the enumerations
 from the DataBuffer class.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if redLUT is
 null.IllegalArgumentException - if greenLUT is
 null.IllegalArgumentException - if blueLUT is
 null.IllegalArgumentException - if bits is
 not one of 1, 2, 4, 8, or 16.IllegalArgumentException - if the
 non-null LUT parameters do not have lengths of
 exactly 1 << bits.IllegalArgumentException - if dataType is
 not one of DataBuffer.TYPE_BYTE,
 DataBuffer.TYPE_SHORT,
 DataBuffer.TYPE_USHORT,
 or DataBuffer.TYPE_INT.IllegalArgumentException - if bits is
 larger than the bit size of the given dataType.public static ImageTypeSpecifier createFromBufferedImageType(int bufferedImageType)
ImageTypeSpecifier that encodes
 one of the standard BufferedImage types
 (other than TYPE_CUSTOM).bufferedImageType - an int representing one of the standard
 BufferedImage types.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if
 bufferedImageType is not one of the standard
 types, or is equal to TYPE_CUSTOM.BufferedImage, 
BufferedImage.TYPE_INT_RGB, 
BufferedImage.TYPE_INT_ARGB, 
BufferedImage.TYPE_INT_ARGB_PRE, 
BufferedImage.TYPE_INT_BGR, 
BufferedImage.TYPE_3BYTE_BGR, 
BufferedImage.TYPE_4BYTE_ABGR, 
BufferedImage.TYPE_4BYTE_ABGR_PRE, 
BufferedImage.TYPE_USHORT_565_RGB, 
BufferedImage.TYPE_USHORT_555_RGB, 
BufferedImage.TYPE_BYTE_GRAY, 
BufferedImage.TYPE_USHORT_GRAY, 
BufferedImage.TYPE_BYTE_BINARY, 
BufferedImage.TYPE_BYTE_INDEXEDpublic static ImageTypeSpecifier createFromRenderedImage(RenderedImage image)
ImageTypeSpecifier that encodes the
 layout of a RenderedImage (which may be a
 BufferedImage).image - a RenderedImage.ImageTypeSpecifier with the desired
 characteristics.IllegalArgumentException - if image is
 null.public int getBufferedImageType()
BufferedImage.int representing a
 BufferedImage type.BufferedImage, 
BufferedImage.TYPE_CUSTOM, 
BufferedImage.TYPE_INT_RGB, 
BufferedImage.TYPE_INT_ARGB, 
BufferedImage.TYPE_INT_ARGB_PRE, 
BufferedImage.TYPE_INT_BGR, 
BufferedImage.TYPE_3BYTE_BGR, 
BufferedImage.TYPE_4BYTE_ABGR, 
BufferedImage.TYPE_4BYTE_ABGR_PRE, 
BufferedImage.TYPE_USHORT_565_RGB, 
BufferedImage.TYPE_USHORT_555_RGB, 
BufferedImage.TYPE_BYTE_GRAY, 
BufferedImage.TYPE_USHORT_GRAY, 
BufferedImage.TYPE_BYTE_BINARY, 
BufferedImage.TYPE_BYTE_INDEXEDpublic int getNumComponents()
ColorModel.getNumComponentspublic int getNumBands()
SampleModel.getNumBandspublic int getBitsPerBand(int band)
band - the index of the band to be queried, as an
 int.IllegalArgumentException - if band is
 negative or greater than the largest band index.public SampleModel getSampleModel()
SampleModel based on the settings
 encapsulated within this object.  The width and height of the
 SampleModel will be set to arbitrary values.SampleModel with arbitrary dimensions.public SampleModel getSampleModel(int width, int height)
SampleModel based on the settings
 encapsulated within this object.  The width and height of the
 SampleModel will be set to the supplied values.width - the desired width of the returned SampleModel.height - the desired height of the returned
 SampleModel.SampleModel with the given dimensions.IllegalArgumentException - if either width or
 height are negative or zero.IllegalArgumentException - if the product of
 width and height is greater than
 Integer.MAX_VALUEpublic ColorModel getColorModel()
ColorModel specified by this object.ColorModel.public BufferedImage createBufferedImage(int width, int height)
BufferedImage with a given width and
 height according to the specification embodied in this object.width - the desired width of the returned
 BufferedImage.height - the desired height of the returned
 BufferedImage.BufferedImageIllegalArgumentException - if either width or
 height are negative or zero.IllegalArgumentException - if the product of
 width and height is greater than
 Integer.MAX_VALUE, or if the number of array
 elements needed to store the image is greater than
 Integer.MAX_VALUE.public boolean equals(Object o)
true if the given Object is
 an ImageTypeSpecifier and has a
 SampleModel and ColorModel that are
 equal to those of this object.equals in class Objecto - the Object to be compared for equality.true if the given object is an equivalent
 ImageTypeSpecifier.Object.hashCode(), 
HashMappublic int hashCode()
hashCode in class ObjectObject.equals(java.lang.Object), 
System.identityHashCode(java.lang.Object) Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2015, Oracle and/or its affiliates.  All rights reserved.