public class ImageTypeSpecifier extends Object
SampleModel和
ColorModel )的类。
| Modifier and Type | Field and Description |
|---|---|
protected ColorModel |
colorModel
ColorModel被用作原型。
|
protected SampleModel |
sampleModel
A
SampleModel用作原型。
|
| Constructor and Description |
|---|
ImageTypeSpecifier(ColorModel colorModel, SampleModel sampleModel)
构造一个
ImageTypeSpecifier直接从
ColorModel和
SampleModel 。
|
ImageTypeSpecifier(RenderedImage image)
从
RenderedImage
ImageTypeSpecifier一个
RenderedImage 。
|
| Modifier and Type | Method and Description |
|---|---|
static ImageTypeSpecifier |
createBanded(ColorSpace colorSpace, int[] bankIndices, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
返回一个带状图像格式的说明符,该格式将使用
ComponentColorModel和
BandedSampleModel将每个通道存储在单独的数组中。
|
BufferedImage |
createBufferedImage(int width, int height)
根据此对象中体现的
BufferedImage ,创建一个给定宽度和高度的BufferedImage。
|
static ImageTypeSpecifier |
createFromBufferedImageType(int bufferedImageType)
返回一个
ImageTypeSpecifier为
BufferedImage类型之一(
TYPE_CUSTOM )的
TYPE_CUSTOM 。
|
static ImageTypeSpecifier |
createFromRenderedImage(RenderedImage image)
返回一个
ImageTypeSpecifier ,编码一个
RenderedImage (可能是一个
BufferedImage )的布局。
|
static ImageTypeSpecifier |
createGrayscale(int bits, int dataType, boolean isSigned)
返回一个灰度图像格式的说明符,该格式将将给定位深度的像素包装为指定数据类型的数组元素。
|
static ImageTypeSpecifier |
createGrayscale(int bits, int dataType, boolean isSigned, boolean isAlphaPremultiplied)
返回一个用于灰度加Alpha图像格式的说明符,它将给定位深度的像素包装为指定数据类型的数组元素。
|
static ImageTypeSpecifier |
createIndexed(byte[] redLUT, byte[] greenLUT, byte[] blueLUT, byte[] alphaLUT, int bits, int dataType)
返回索引颜色图像格式的说明符,该格式将给定位深度的索引值包装为指定数据类型的数组元素。
|
static ImageTypeSpecifier |
createInterleaved(ColorSpace colorSpace, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
返回一个交错图像格式的说明符,它将使用
ComponentColorModel和
PixelInterleavedSampleModel将每个像素组件存储在单独的字节,短或int中。
|
static ImageTypeSpecifier |
createPacked(ColorSpace colorSpace, int redMask, int greenMask, int blueMask, int alphaMask, int transferType, boolean isAlphaPremultiplied)
返回一个用于打包图像格式的说明符,它将使用
DirectColorModel和打包的
SampleModel来存储单个字节,短或int中打包的每个像素。
|
boolean |
equals(Object o)
如果给定的
Object是
ImageTypeSpecifier ,并且具有与该对象相同的
SampleModel和
ColorModel ,则返回
true 。
|
int |
getBitsPerBand(int band)
返回用于表示给定波段的样本的位数。
|
int |
getBufferedImageType()
返回包含描述从图像的枚举常数值之一的int
BufferedImage 。
|
ColorModel |
getColorModel()
返回此对象指定的
ColorModel 。
|
int |
getNumBands()
返回此对象指定的频带数。
|
int |
getNumComponents()
返回此对象指定的颜色成分数。
|
SampleModel |
getSampleModel()
根据封装在此对象内的设置返回一个
SampleModel 。
|
SampleModel |
getSampleModel(int width, int height)
根据封装在此对象内的设置返回
SampleModel 。
|
int |
hashCode()
返回此ImageTypeSpecifier的哈希码。
|
protected ColorModel colorModel
ColorModel作为原型使用。
protected SampleModel sampleModel
SampleModel用作原型。
public ImageTypeSpecifier(ColorModel colorModel, SampleModel sampleModel)
ImageTypeSpecifier直接从ColorModel和SampleModel 。
主叫方有责任提供兼容的参数。
colorModel - a
ColorModel 。
sampleModel - a
SampleModel 。
IllegalArgumentException - 如果任一参数是
null 。
IllegalArgumentException -如果
sampleModel不兼容
colorModel 。
public ImageTypeSpecifier(RenderedImage image)
RenderedImage ImageTypeSpecifier一个RenderedImage 。
如果正在使用BufferedImage使用其中一种工厂方法createFromRenderedImage或createFromBufferedImageType ,以获得更准确的结果。
image - a
RenderedImage 。
IllegalArgumentException - 如果参数是
null 。
public static ImageTypeSpecifier createPacked(ColorSpace colorSpace, int redMask, int greenMask, int blueMask, int alphaMask, int transferType, boolean isAlphaPremultiplied)
DirectColorModel和打包的
SampleModel来存储单个字节,短或整数的每个像素。
colorSpace - 所需的
ColorSpace 。
redMask - 连续的掩码表示红色通道的位置。
greenMask - 连续的掩码表示绿色通道的位置。
blueMask - 连续的掩模表示蓝色通道的位置。
alphaMask - 连续的掩码表示阿尔法通道的位置。
transferType - 所需的
SampleModel传输类型。
isAlphaPremultiplied -
true如果颜色通道将被alpha通道预乘。
ImageTypeSpecifier具有所需特性。
IllegalArgumentException - 如果
colorSpace是
null 。
IllegalArgumentException - 如果
colorSpace不是类型
TYPE_RGB 。
IllegalArgumentException - 如果没有掩码至少设置1位。
IllegalArgumentException -如果
transferType如果不是一个
DataBuffer.TYPE_BYTE ,
DataBuffer.TYPE_USHORT ,或
DataBuffer.TYPE_INT 。
public static ImageTypeSpecifier createInterleaved(ColorSpace colorSpace, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
ComponentColorModel和
PixelInterleavedSampleModel将每个像素组件存储在单独的字节,短或int中。
colorSpace - 所需的
ColorSpace 。
bandOffsets - 表示每个频带的偏移的
int的数组。
dataType - 所需的数据类型,作为
DataBuffer类的
DataBuffer 。
hasAlpha -
true如果需要alpha通道。
isAlphaPremultiplied -
true如果颜色通道将被alpha通道预乘。
ImageTypeSpecifier具有所需的特性。
IllegalArgumentException - 如果
colorSpace是
null 。
IllegalArgumentException - 如果
bandOffsets是
null 。
IllegalArgumentException - 如果
dataType不是合法的
DataBuffer.TYPE_*常数之一。
IllegalArgumentException - 如果
bandOffsets.length不等于颜色空间分量的数量,如果
hasAlpha是
true ,则加1。
public static ImageTypeSpecifier createBanded(ColorSpace colorSpace, int[] bankIndices, int[] bandOffsets, int dataType, boolean hasAlpha, boolean isAlphaPremultiplied)
ComponentColorModel和
BandedSampleModel将每个通道存储在单独的阵列中。
colorSpace - 所需的
ColorSpace 。
bankIndices - 表示其中将存储每个频带的组的
int的阵列。
bandOffsets -
int s的数组,
int其银行中每个频带的起始偏移量。
dataType - 所需的数据类型,作为
DataBuffer类的
DataBuffer 。
hasAlpha -
true如果需要alpha通道。
isAlphaPremultiplied -
true如果颜色通道将被alpha通道预乘。
ImageTypeSpecifier具有所需的特性。
IllegalArgumentException - 如果
colorSpace是
null 。
IllegalArgumentException - 如果
bankIndices是
null 。
IllegalArgumentException - 如果
bandOffsets是
null 。
IllegalArgumentException - 如果
bankIndices和
bandOffsets的长度不同。
IllegalArgumentException - 如果
bandOffsets.length不等于颜色空间分量的数量,如果
hasAlpha是
true ,则加1。
IllegalArgumentException - 如果
dataType不是合法的
DataBuffer.TYPE_*常数之一。
public static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned)
bits - 每个灰度值的位数(
bits或16)。
dataType - 所需的数据类型,作为
DataBuffer类的
DataBuffer 。
isSigned -
true如果要表示负值。
ImageTypeSpecifier具有所需特性。
IllegalArgumentException - 如果
bits不是
bits或16中的一个。
IllegalArgumentException -如果
dataType不是一个
DataBuffer.TYPE_BYTE ,
DataBuffer.TYPE_SHORT ,或
DataBuffer.TYPE_USHORT 。
IllegalArgumentException - 如果
bits大于给定
dataType的位大小。
public static ImageTypeSpecifier createGrayscale(int bits, int dataType, boolean isSigned, boolean isAlphaPremultiplied)
bits - 每个灰度值的位数(
bits或16)。
dataType - 所需的数据类型,作为
DataBuffer类的
DataBuffer 。
isSigned -
true如果要表示负值。
isAlphaPremultiplied -
true如果亮度通道将被alpha通道预乘。
ImageTypeSpecifier具有所需的特性。
IllegalArgumentException - 如果
bits不是
bits或16中的一个。
IllegalArgumentException -如果
dataType不是一个
DataBuffer.TYPE_BYTE ,
DataBuffer.TYPE_SHORT ,或
DataBuffer.TYPE_USHORT 。
IllegalArgumentException - 如果
bits大于给定
dataType的位大小。
public static ImageTypeSpecifier createIndexed(byte[] redLUT, byte[] greenLUT, byte[] blueLUT, byte[] alphaLUT, int bits, int dataType)
redLUT - 包含每个索引的红色值的
byte s的数组。
greenLUT - 一个
greenLUT的数组,
byte *每个索引的绿色值。
blueLUT - 包含每个索引的蓝色值的
byte s的数组。
alphaLUT -的阵列
byte包含每个索引α值S,或
null创建完全不透明LUT。
bits - 每个索引中的位数。
dataType - 所需的输出类型,作为
DataBuffer类的
DataBuffer 。
ImageTypeSpecifier具有所需特性。
IllegalArgumentException - 如果
redLUT是
null 。
IllegalArgumentException - 如果
greenLUT是
null 。
IllegalArgumentException - 如果
blueLUT是
null 。
IllegalArgumentException - 如果
bits不是
bits或16中的一个。
IllegalArgumentException - 如果非
null LUT参数的长度不正确为
1 << bits 。
IllegalArgumentException -如果
dataType不是一个
DataBuffer.TYPE_BYTE ,
DataBuffer.TYPE_SHORT ,
DataBuffer.TYPE_USHORT ,或
DataBuffer.TYPE_INT 。
IllegalArgumentException - 如果
bits大于给定
dataType的位大小。
public static ImageTypeSpecifier createFromBufferedImageType(int bufferedImageType)
ImageTypeSpecifier ,编码一个标准的
BufferedImage类型(不是
TYPE_CUSTOM )。
bufferedImageType - 表示标准
BufferedImage类型之一的int。
ImageTypeSpecifier具有所需的特性。
IllegalArgumentException - 如果
bufferedImageType不是标准类型之一,或者等于
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_INDEXED
public static ImageTypeSpecifier createFromRenderedImage(RenderedImage image)
ImageTypeSpecifier编码
RenderedImage (可能是
BufferedImage )的布局。
image - a
RenderedImage 。
ImageTypeSpecifier具有所需特性。
IllegalArgumentException - 如果
image是
null 。
public int getBufferedImageType()
BufferedImage 。
int
BufferedImage类型的
BufferedImage 。
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_INDEXED
public int getNumComponents()
ColorModel.getNumComponents返回的值相同
public int getNumBands()
SampleModel.getNumBands返回的值相同
public int getBitsPerBand(int band)
band - 要查询的乐队的索引,作为int。
IllegalArgumentException - 如果
band为负或大于最大频带索引。
public SampleModel getSampleModel()
SampleModel 。
SampleModel的宽度和高度将被设置为任意值。
SampleModel任意尺寸。
public SampleModel getSampleModel(int width, int height)
SampleModel 。
SampleModel的宽度和高度将被设置为提供的值。
width - 返回的所需宽度
SampleModel 。
height - 返回的
SampleModel的期望高度。
SampleModel具有给定的尺寸。
IllegalArgumentException - 如果
width或
height为负数或零。
IllegalArgumentException - 如果
width和
height的产品大于
Integer.MAX_VALUE
public ColorModel getColorModel()
ColorModel 。
ColorModel 。
public BufferedImage createBufferedImage(int width, int height)
BufferedImage ,创建一个给定宽度和高度的BufferedImage。
width - 返回的所需宽度
BufferedImage 。
height - 所需的高度返回的
BufferedImage 。
BufferedImage
IllegalArgumentException - 如果
width或
height为负数或零。
IllegalArgumentException - 如果
width和
height的产品大于
Integer.MAX_VALUE ,或者如果存储图像所需的数组元素数量大于
Integer.MAX_VALUE 。
public boolean equals(Object o)
Object是
ImageTypeSpecifier并且具有与该对象相同的
SampleModel和
ColorModel ,则返回
true 。
equals在
Object
o - 要比较的
Object相等。
true如果给定的对象是等效的
ImageTypeSpecifier 。
Object.hashCode() , HashMap
public int hashCode()
hashCode在
Object
Object.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, 2014, Oracle and/or its affiliates. All rights reserved.