public class ColorConvertOp extends Object implements BufferedImageOp, RasterOp
如果源是具有预乘α的BufferedImage,则颜色分量在颜色转换之前被alpha分量除。 如果目的地是具有预乘法α的BufferedImage,则颜色分量在转换后乘以alpha分量。 光栅被视为没有alpha通道,即所有的带都是彩色带。
如果在构造函数中指定了RenderingHints对象,则可以使用颜色渲染提示和抖动提示来控制颜色转换。
请注意,源和目标可能是相同的对象。
Constructor and Description |
---|
ColorConvertOp(ColorSpace srcCspace, ColorSpace dstCspace, RenderingHints hints)
从两个ColorSpace对象构造一个新的ColorConvertOp。
|
ColorConvertOp(ColorSpace cspace, RenderingHints hints)
从ColorSpace对象构造一个新的ColorConvertOp。
|
ColorConvertOp(ICC_Profile[] profiles, RenderingHints hints)
从ICC_Profiles数组构造一个新的ColorConvertOp。
|
ColorConvertOp(RenderingHints hints)
构造一个新的ColorConvertOp,它将从源颜色空间转换为目标色彩空间。
|
Modifier and Type | Method and Description |
---|---|
BufferedImage |
createCompatibleDestImage(BufferedImage src, ColorModel destCM)
给出这个来源,创建具有正确大小和频带数的归零目标图像。
|
WritableRaster |
createCompatibleDestRaster(Raster src)
给出这个来源,创建一个具有正确大小和频带数的归零目标光栅。
|
BufferedImage |
filter(BufferedImage src, BufferedImage dest)
ColorConverts源BufferedImage。
|
WritableRaster |
filter(Raster src, WritableRaster dest)
Color转换源光栅中的图像数据。
|
Rectangle2D |
getBounds2D(BufferedImage src)
给出这个源,返回目的地的边界框。
|
Rectangle2D |
getBounds2D(Raster src)
给出这个源,返回目的地的边界框。
|
ICC_Profile[] |
getICC_Profiles()
返回用于构造此ColorConvertOp的ICC_Profiles数组。
|
Point2D |
getPoint2D(Point2D srcPt, Point2D dstPt)
返回源中给定点的目标点的位置。
|
RenderingHints |
getRenderingHints()
返回此op使用的渲染提示。
|
public ColorConvertOp(RenderingHints hints)
hints
- 用于控制颜色转换的
RenderingHints
对象,或
null
public ColorConvertOp(ColorSpace cspace, RenderingHints hints)
filter
方法时,此操作非常有用。
在这种情况下,ColorSpace定义了由过滤方法创建的目的地的目标颜色空间。
否则,ColorSpace在转换为目的地空间之前定义了一个中间空间,源将被转换。
cspace
- 定义目的地
ColorSpace
或中间人
ColorSpace
hints
- 用于控制颜色转换的
RenderingHints
对象,或
null
NullPointerException
- 如果cspace为空
public ColorConvertOp(ColorSpace srcCspace, ColorSpace dstCspace, RenderingHints hints)
srcCspace
- 来源
ColorSpace
dstCspace
- 目的地
ColorSpace
hints
- 用于控制颜色转换的
RenderingHints
对象,或
null
NullPointerException
- 如果srcCspace或dstCspace为空
public ColorConvertOp(ICC_Profile[] profiles, RenderingHints hints)
对于BufferedImages,如果源BufferedImage的ColorSpace与阵列中第一个配置文件的要求不匹配,则首次转换为适当的ColorSpace。 如果阵列中最后一个配置文件的要求不被目标BufferedImage的ColorSpace满足,则最后一次转换是到目标的ColorSpace。
对于光栅,源光栅中的光带数必须与阵列中第一个配置文件的要求相匹配,目标光栅中的光带数必须与阵列中最后一个配置文件的要求相匹配。 数组必须至少有两个元素,或者为Raster调用过滤器方法将抛出一个IllegalArgumentException异常。
profiles
-
ICC_Profile
对象的数组
hints
- 用于控制颜色转换的
RenderingHints
对象,或
null
IllegalArgumentException
- 当配置文件序列未指定明确的颜色转换时
NullPointerException
- 如果个人资料为空
public final ICC_Profile[] getICC_Profiles()
ColorConvertOp
的
ICC_Profile
对象的数组,或
null
如果这个
ColorConvertOp
没有构造一个
ICC_Profile
对象的数组。
public final BufferedImage filter(BufferedImage src, BufferedImage dest)
filter
在界面
BufferedImageOp
src
-源
BufferedImage
被转换
dest
- 目的地
BufferedImage
或
null
dest
颜色转换自
src
或一个新的,转换
BufferedImage
如果
dest
是
null
IllegalArgumentException
- 如果dest为null,并且该op是使用仅使用RenderingHints参数的构造函数构造的,因为操作不正确。
public final WritableRaster filter(Raster src, WritableRaster dest)
filter
在界面
RasterOp
src
-源
Raster
被转换
dest
- 目的地
WritableRaster
或
null
dest
颜色转换自
src
或一个新的,转换
WritableRaster
如果
dest
是
null
IllegalArgumentException
- 如果源或目标频带的数量不正确,则源或目标色彩空间未定义,或者该op是使用仅适用于BufferedImages操作的构造函数构造的。
public final Rectangle2D getBounds2D(BufferedImage src)
getBounds2D
中的
BufferedImageOp
src
- 来源
BufferedImage
Rectangle2D
是
Rectangle2D
的边界框,给定指定的
src
public final Rectangle2D getBounds2D(Raster src)
getBounds2D
在界面
RasterOp
src
- 来源
Raster
Rectangle2D
是
Rectangle2D
的边界框,给定指定的
src
public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
createCompatibleDestImage
在界面
BufferedImageOp
src
- 过滤器操作的源镜像。
destCM
- 目的地的ColorModel。
如果为null,将使用适当的ColorModel。
BufferedImage
具有正确的大小和数量的带从指定的
src
。
IllegalArgumentException
- 如果
destCM
是
null
,而这个
ColorConvertOp
是创建的,没有为
ColorSpace
定义的任何
ICC_Profile
或ColorSpace
public WritableRaster createCompatibleDestRaster(Raster src)
createCompatibleDestRaster
在界面
RasterOp
src
- 指定的
Raster
WritableRaster
具有正确的大小和数量的带从指定的
src
IllegalArgumentException
- 如果这个
ColorConvertOp
创建没有足够的信息来定义
dst
和
src
颜色空间
public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
dstPt
是非空值,它将用于保存返回值。
请注意,对于此类,目标点将与源点相同。
getPoint2D
在界面
BufferedImageOp
getPoint2D
在界面
RasterOp
srcPt
- 指定的来源
Point2D
dstPt
- 目的地
Point2D
dstPt
设置后的位置与
srcPt
相同
public final RenderingHints getRenderingHints()
getRenderingHints
在界面
BufferedImageOp
getRenderingHints
在界面
RasterOp
RenderingHints
此的对象
ColorConvertOp