public abstract class PackedColorModel extends ColorModel
PackedColorModel
类是一个抽象
ColorModel
类作品代表颜色和alpha信息作为单独的样本像素值和包装的所有样品的单像素成一个int,短,或字节数量。这个类可以使用任意
ColorSpace
。在像素值的颜色样本的数量必须在
ColorSpace
颜色分量个数。可以有一个单一的α样品。数组的长度总是1的方法,使用一个阵列像素表示的类型
transferType
。传输类型支持databuffer.type_byte,databuffer.type_ushort,和databuffer.type_int。颜色和alpha样本存储在比特数组的单个元素的位掩码表示。每一个位掩码必须是连续的,而掩码必须不重叠。同样的面具,适用于单像素表示通过其他方法使用int。面具和颜色/α样品对应如下:
getNumComponents
- 1确定。getNumColorComponents
指标参考色样。ColorSpace
指定。通常,这反映了颜色空间类型的名称(例如,type_rgb),指数0对应红色,指数1绿2蓝,和指数。从像素值到颜色/α分量的显示或处理目的的翻译是一对一的样品的一对一的对应关系。一个PackedColorModel
通常是用于图像数据,使用口罩定义包装的样品。例如,一个PackedColorModel
可以与SinglePixelPackedSampleModel
构建BufferedImage
连词。通常由SampleModel
和ColorModel
用口罩将是相同的。然而,如果他们是不同的,像素数据的解释是根据颜色的ColorModel
面具了。
一个int
像素表示的是适用于所有这个类的对象,因为它总是能代表一个单一的int
这类使用的像素值。因此,使用这种表示方法,不要把因无效像素值的IllegalArgumentException
。
PackedColorModel
DirectColorModel
的子类,它类似于一个X11真彩视觉。
pixel_bits, transferType
BITMASK, OPAQUE, TRANSLUCENT
Constructor and Description |
---|
PackedColorModel(ColorSpace space, int bits, int[] colorMaskArray, int alphaMask, boolean isAlphaPremultiplied, int trans, int transferType)
构建了从彩色面具阵列
PackedColorModel ,指定哪一位在
int 表示每个像素包含样本颜色,和Alpha遮罩。
|
PackedColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int trans, int transferType)
构建了从指定的面具,这表明位在
int 像素表示含有α,
PackedColorModel 红色,绿色和蓝色的颜色样本。
|
Modifier and Type | Method and Description |
---|---|
SampleModel |
createCompatibleSampleModel(int w, int h)
创建一个具有指定宽度和高度,具有数据的布局,这
ColorModel 兼容
SampleModel 。
|
boolean |
equals(Object obj)
如果指定的
Object 是
PackedColorModel 实例和等于这
PackedColorModel 。
|
WritableRaster |
getAlphaRaster(WritableRaster raster)
返回一个
WritableRaster 表示图像的alpha通道,从输入
WritableRaster 提取。
|
int |
getMask(int index)
返回表示像素中包含指定颜色/阿尔法样本的掩码。
|
int[] |
getMasks()
返回一个掩码数组,指示在一个像素中的哪些位包含颜色和字母的样本。
|
boolean |
isCompatibleSampleModel(SampleModel sm)
如果指定的检查
SampleModel 与
ColorModel 兼容。
|
coerceData, createCompatibleWritableRaster, finalize, getAlpha, getAlpha, getBlue, getBlue, getColorSpace, getComponents, getComponents, getComponentSize, getComponentSize, getDataElement, getDataElement, getDataElements, getDataElements, getDataElements, getGreen, getGreen, getNormalizedComponents, getNormalizedComponents, getNumColorComponents, getNumComponents, getPixelSize, getRed, getRed, getRGB, getRGB, getRGBdefault, getTransferType, getTransparency, getUnnormalizedComponents, hasAlpha, hashCode, isAlphaPremultiplied, isCompatibleRaster, toString
public PackedColorModel(ColorSpace space, int bits, int[] colorMaskArray, int alphaMask, boolean isAlphaPremultiplied, int trans, int transferType)
PackedColorModel
,指定哪一位在
int
表示每个像素包含样本颜色,和Alpha遮罩。在指定的
ColorSpace
颜色分量。对
colorMaskArray
长度应在
ColorSpace
组件的数量。所有在每个面具位必须是连续的,适合在指定数量的
int
像素表示的最低有效位。如果
alphaMask
是0,没有α。如果有α的
boolean
isAlphaPremultiplied
指定如何解释颜色和像素值α样品。如果
boolean
是
true
,色样的假设已乘以α样品。的透明度,
trans
,指定α值可以通过这种颜色模型来表示。传输类型是用于表示像素值的原始数组的类型。
space
-指定
ColorSpace
bits
在像素值的比特数
colorMaskArray
数组指定代表,代表颜色分量的像素值的比特的面具
alphaMask
-指定代表代表alpha分量的像素值的位掩码
isAlphaPremultiplied
-
true
如果颜色样品预乘alpha样品;
false
否则
trans
指定alpha值,可以通过这个颜色模型来表示
transferType
-用来表示像素值的数组类型
IllegalArgumentException
-如果
bits
小于1或大于32
public PackedColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int trans, int transferType)
int
像素表示含有α,
PackedColorModel
红色,绿色和蓝色的颜色样本。颜色分量是在指定的
ColorSpace
,必须colorspace.type_rgb型。所有在每个面具位必须是连续的,适合在指定数量的
int
像素表示的最低有效位。如果
amask
是0,没有α。如果有α的
boolean
isAlphaPremultiplied
指定如何解释颜色和像素值α样品。如果
boolean
是
true
,色样的假设已乘以α样品。的透明度,
trans
,指定α值可以通过这种颜色模型来表示。传输类型是用于表示像素值的原始数组的类型。
space
-指定
ColorSpace
bits
在像素值的比特数
rmask
-指定代表,代表红颜色分量的像素值的位掩码
gmask
-指定代表,代表着绿色的颜色分量的像素值的位掩码
bmask
-指定代表,代表蓝颜色分量的像素值的位掩码
amask
-指定代表代表alpha分量的像素值的位掩码
isAlphaPremultiplied
-
true
如果颜色样品预乘alpha样品;
false
否则
trans
指定alpha值,可以通过这个颜色模型来表示
transferType
-用来表示像素值的数组类型
IllegalArgumentException
-如果
space
不是type_rgb空间
ColorSpace
public final int getMask(int index)
index
对应颜色样品名称颜色空间中的位置。因此,一个
index
等于0个CMYK颜色空间对应的是青色和
index
等于1对应于品红。如果有α,α
index
会:
alphaindex = numcomponents() - 1;
index
-指定颜色或α样品
int
像素表示包含指定的颜色或α
index
样本。
ArrayIndexOutOfBoundsException
-如果
index
大于这个
PackedColorModel
组件数减去1或者
index
小于零
public final int[] getMasks()
int
像素表示包含颜色或α样品。
public SampleModel createCompatibleSampleModel(int w, int h)
ColorModel
兼容
SampleModel
。
createCompatibleSampleModel
方法重写,继承类
ColorModel
w
的宽度(像素)的图像数据描述的区域
h
-高度(像素)的图像数据的区域描述
SampleModel
。
IllegalArgumentException
-如果
w
或
h
不大于0
SampleModel
public boolean isCompatibleSampleModel(SampleModel sm)
SampleModel
与
ColorModel
兼容。如果
sm
是
null
,此方法返回
false
。
isCompatibleSampleModel
方法重写,继承类
ColorModel
sm
-指定
SampleModel
,或
null
true
如果指定
SampleModel
与
ColorModel
兼容;
false
否则。
SampleModel
public WritableRaster getAlphaRaster(WritableRaster raster)
WritableRaster
表示图像的alpha通道,从输入
WritableRaster
提取。这种方法假设
WritableRaster
对象这
ColorModel
店α波段,相关如果存在,作为图像数据的最后一个乐队。返回
null
如果没有独立空间的alpha通道这
ColorModel
相关。此方法创建一个新的
WritableRaster
,但股价数据阵列。
getAlphaRaster
方法重写,继承类
ColorModel
raster
-
WritableRaster
含有图像
WritableRaster
表示包含在
raster
图像的alpha通道。
public boolean equals(Object obj)
Object
是
PackedColorModel
实例和等于这
PackedColorModel
。
equals
方法重写,继承类
ColorModel
obj
-
Object
测试平等
true
如果指定
Object
是
PackedColorModel
实例和等于这
PackedColorModel
;
false
否则。
Object.hashCode()
,
HashMap
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.